prijava

Podijeli sa Vukajlijašima

83.320 odgovora· poslednji pre 15 dana· strana 2.388 od 2.778
ЈО

:D
samo vi zafrkavajte.
Baš me fino krenulo u poslednje vrijeme vježbam C, to sad trenutno prelazim na onom kursu CS50, a vi tako...

https://www.edx.org/course/introduction-computer-science-harvardx-cs50x

Radim to već neko vrijeme, samo nisam htio ništa pričat da ne izmalerišem. Al pošto sam već prešao 50% malo sam kuražniji sad... privodim kraju 5. sedmicu, završavam C, onda se prelazi na Pajton... kasnije dolazi SQL, HTML, CSS, JavaScript...

Sve i da ništa ne bude od toga, ne bi mi bilo žao, već sam naučio neke stvari.

KA

pojo gljivu, otvorio redit, stavio kapu od folije naglavu

Hehehe, predvidio je to sve QAnon, ko ima oči, vidi

Prvo EUROdizel iskliznuo, očita poveznica da je Evropa ispala iz koloseka

A sada fosforna kiselina, ko znade grčki zna šta je fos for - fos fero, svetlonoša

A zna se ko je svetlonoša, Lucifer

To Duboka država poručuje da u Srbiji ni zapadni đavo ni EU nisu dobrodošli

Sve je zapisano u magičnim runama na avangardnim šabačkim poljima

Osvestuite se, još nije kasno

SC

Jovo, Jovane, bas mi ne das mira,
Jovo, Jovane, nek si poco programirat'

Odlicno, bas mi je drago. Malo mi je samo suludo uciti C pored toliko modernih i lepih programskih jezika (koji su mislim vise trazeni) no dobro.

Small hints:

Pls { stavi ovako u isti red sa uslovom, tipa ovako:

if (dio == 1 && !(issamog(rijeci)) ) {

Vidim imas masu if else if else, zar ne moze da se napravi neka logika sa

S
W
I
T
C
H

Edit

završavam C, onda se prelazi na Pajton... kasnije dolazi SQL, HTML, CSS, JavaScript...

Mislim ne kapiram sta ce ti C a hoces sve ovo, zapravo neces moci sve ovo, odluci se, Pajton, JS..

SQL HTML CSS nisu programski jezici

CE

sto da ne, u C ucis osnove o kojim posle ne razmisljas dok ne dodju i ujebu te negde, ovo vidim covek lepo alocira, free itd, kapira da je ostavio bag koji ce decenijama kasnije da grupa programera cesa glavu sta se dogadja, sto samo pocetnik moze da ti uradi i to.

tj jovore, sta ce se desi sa ovim jednom u 10000 puta unosenja stringa koji je duzi od 30 karaktera? jel vidis gresku koja nikad nece da da eror, osim kad ne treba da da error da pokrsi ovo i sve sto je bazirano na ovome, da niko ziv nikad ne moze da je replicira, a stoji tu i gleda te?

isto, koristi "tolower(str)" za proveravanje karaktera itd, i ovo za issamog, ili pisi hex brojke, ili jos bolje 'a' 'e' 'i' itd, ovako je necitljivo.

mnogo jedem govna. mnogo sam radio sa pocetnicima.

SC
sto da ne

Ma ok nego meni samo zbog ovog sto sam mu rekao da ce lakse naci posao sa tipa swift, pa i swiftui, android, flutter, kotlin..

CE

dobro jbg, danas kao c programer neko sto naucio da programira u 30 prvo nece nikad naci poso, bas zbog ovih problema koji sam napisao u prethodnom postu ko primer, kojih imas 10000000 u C i C++, i zato se naravno i ne koriste cesto, a gde se koristi ti treba super iskusni programeri.

al kao nesto sto se uci, mislim da daje vrlo korisno iskustvo kako kompjuter radi, ako imas vremena da ucis. sto pomaze posle oko zajebanih problema u drugim programskim jezicima.

ЈО

Ok, ko hoce da gleda kod nek ne gleda ono sto sam ovdje kopirao, jer je autoformatiranje Vukajlije sve pojebalo... Dakle, samo ono sto sam preko dropboxa serovao ima smisla, i na to mozete komentarisati.

Konkretno ova dva fajla:

https://www.dropbox.com/s/o5zld8unmh7iuu4/utrovacki.txt?dl=0
https://www.dropbox.com/s/sbj54qeanttxucv/grafik%20funkcije.txt?dl=0

Zasto C? Pa najvise zato sto se on radi u prvim sedmicama onog kursa CS50 za koji sam dobio odlicne preporuke, a uz to je besplatan.

Kontam nece skoditi... a naravno plan je da se predje na nesto modernije kasnije.

Sto se tice switcha, nisam koristio u onoj funkciji issamog zato sto se radi o nizu if statementa koji su nezavisni jedan od drugog... Zapravo moglo bi se to sve pisati i krace, ali bi onda bilo tipa
if (ovo || ono || onodruo || onotrece || onopeto || onodeseto)

E da ne bi sve to pisao tako u jednom redu, imam niz statementa. Result je na pocetku 0, a ako bilo koji od tih ifova bude tacan, result se mijenja na 1.

tj jovore, sta ce se desi sa ovim jednom u 10000 puta unosenja stringa koji je duzi od 30 karaktera? jel vidis gresku koja nikad nece da da eror, osim kad ne treba da da error da pokrsi ovo i sve sto je bazirano na ovome, da niko ziv nikad ne moze da je replicira, a stoji tu i gleda te?

isto, koristi "tolower(str)" za proveravanje karaktera itd, i ovo za issamog, ili pisi hex brojke, ili jos bolje 'a' 'e' 'i' itd, ovako je necitljivo.

Nisam ovo zamislio kao neki production kod koji ce uvijek da radi besprekorno u svim uslovima. Ovo je cisto vjezba da napravim program koji pretvara rijec u utrovacki... pri normalnim unosima. Ali nije foolproof... ako neko unese rijec od 100 slova, program pada.

Sto se tice ovoga tolower, to sam mogao uraditi, dobra je preporuka...
Tipa ako neko unese rijec Pivo, rezultat ce biti uvozaPinje, a treba uvozapinje... ali nisam ni tu vodio racuna da bude sve 100% ispravno, bilo mi je bitno, hocu li uspijet postici utrovacki kako treba...

U pravu si i ovo za 'a' itd... mi smo prvo ucili kako se to provjerava na osnovu ASCII kodova, ali u sustini nepotrebno je, moglo se raditi i direktno sa slovima... a prethodno prebaciti sve u lowercase... Uglavnom to sam sinoc nabrzinu skarabudzio... al sve su primjedbe na mjestu.

SC

Znam da ces mi reci "zasto me mrzis sto volim Seselja" ali stvarno bi trebao da izbacis i ovo "brojac" itd, veruj udje u naviku, bolje ispravi na vreme. Nisam hteo ko celt da te upucavam sad sa ovim AHA A STA SE DESAVA U OVOM SLUCAJU jer vidim da ti nije plan da pises bullet proof code ali makar stici te neke sitne dobre navike, tipa { u istom redu sa uslovom, razmak od 1 reda izmedju blokova koda, svi property na engleskom, kafa na 15 min itd

I odmah apliciraj negde i trazi veliku platu, odbice te ali da vezbas da budes bezobrazan. Trazi celtu da te vodi u Svicu i da ti nadje smestaj itd, pricaj ortacima kako mozes da hakujes instagram ribe na koju se loze ali neces jer nije ispravno

CE
ako neko unese rijec od 100 slova, program pada.

vidis, to je fora sa tim. nece. nece ni ako uneses 1000, ni 10000 u velikoj vecini slucajeva, sa x testova nece da da nikakvu gresku obradice rec i toliko.

osim kad se pogode uslovi da to alocira na kraju memorije, i onda dobijes seg fault gresku, koja te bar navodi na to sta se desilo, ili, cesce, ako alocira tvoj program nesto drugo odmah posle tog segmenta, gde ce scanf samo da nonsalantno prepise preko te memorije stagod da je uneseno, i onda da se desi error na nekom sasvim desetom mestu, u neko sasvim drugo vreme.

zato ti kazem, stavio si perfektan bag, ako hoces da das otkaz u firmi i da im ostavis najpodmukliji moguci poso da resavaju.

za bonus poene samo ne alociras brojkom, nego nekom promenljivom koja znas da je manje.

ЈО

Stvarno jeste, evo sad sam isprobao... i radi i sa pozamasnim rijecima...
E sad, nisam siguran kako bi se to rijesilo... za integere je lako jer on ima fiksnu velicinu, ali string, moze da bude bilo koje velicine...

Znam da se moze implementirati neka funkcija koja alocira memoriju za string slovo po slovo zavisno od velicine stringa koji se unese, ali je prilicno komplikovano...

U pocetku smo na kursu koristili njihovu funkciju u okviru neke njihove biblioteke... a kasnije je receno da se ne treba na to vise oslanjati, vec ici sa scanf

evo koja je to funkcija
https://manual.cs50.io/3/get_string

CE

ako ikada programiras u C-u, scanf nikada nemoj da pustis da cita nelimitirani string

scanf("%29s",rijec);

29 ti je maksimalni string sto mozes bezbedno da prihvatis, jer svaki string ima null karakter na kraju. odnosno, sad kad razmislim, mozda windows dodaje i /n/r sa konzole, tako da je dobra ideja da alociras jedno 3-4 bajta vise uvek.

ova sranja su razlog zasto se C vise nigde ne koristi osim u najbazicnijim kontrolerima, i za vezbu ovih stvari :)

pri cemu ni u sta ovo sto pricam nisam siguran, morao bi da guglam detalje kao i za sve u zivotu sto sam isprogramirao.

ЈО

Dobro je ovo znati, dobra caka, znaci mogao sam sve probleme izbjeci samo dodavanjem broja ispred s... Hvala. Sad cu ovako raditi ubuduce...

Al eto, sto ti kazes, jest malo nezgodno... prvo moras lupiti koliko da alociras u mallocu, a onda opet moras u scanf ograniciti brojem, i to malo manjim od onog u mallocu.

CE

sve to je logicno ako skapiras kako se memorija koristi, sta se upisuje za sta, kako se predstavlja string, sta je integer, float, array, pointer, sta je koliko bajta, itd.

nije lose da znas to, ne znam jel te uce. ali vazi ovo sto kaze skauzer, kad prodjes, ukapiras to, predjes na ucenje onog sa cim ces moci da pravis nesto. ali posle ovog ce biti malo lakse sutra, npr kad uzmes javaskript, pa imas funkciju sto sabira dva broja, pa saberes 2 i 3, i dobijes rezultat 23, da odmah provalis sta bi moglo da bude.

ЈО

Radi se tu sve to sto si ti pomenuo, sve sam to vec presao. Mada uvijek nesto moze ostati malo nedoreceno. Ne moze pocetni kurs da pokreije bas sve detaljno.

Cak pravim i neku skriptu sam sebi u koju pisem najvaznije koncepte da ne zaboravim. Jer prije mi se znalo desiti da sam ucio neka sranja, pa izlapilo... Sad se cesto vracam na skriptu da se podsjetim nekih stvari, a onda bolje i pamtim.

PA


Iskreno jedini razlozi zašto još uvek ostajem na forumu punom debila:
1. 99% su to ljudi od krvi i mesa
2. Mogu da nađem konkretne odgovore na konkretna pitanja

KA

Donekle si u pravu

Postaje sve teže naći stvari na internetu a ne biti zatrpan masom affiliatea, .ru stranica, oglasa i sakatog machine translationa

CE
Iskreno jedini razlozi zašto još uvek ostajem na forumu punom debila:

jedini i glavni razlog ako ostajes negde gde mislis da su svi debili, jeste da si ti jos veci debil.

Prijavi se na vukajlija.com da bi odgovorio.Prijavi se