-
U ovom videu, želeo bih da vas upoznam
-
sa pojmom "kompjuterski program".
-
Preporučujem vam da me pratitie dok radim
-
je da probate stvari samostalno.
-
Ovo je Python okruženje. Programiranje ću raditi
-
u programskom jeziku zvanom Python (Pajton).
-
Ovo okruženje se naziva PyScripter. Besplatano je,
-
To je "open-source" softver i ja verujem da
-
ću koristiti Python 2.6 ili 2.7. Sve dok vi koristite
-
Python 2, vaši primeri će biti isti kao i moji,
-
radiće na isti način. Ali ako koristite Python 3, poveremeno moraćete da
-
koristite malo drugačija rešenja da bi (Python 3)
-
te izuzetke kada se dogode. Hajde da počnemo pisanje
-
programa. Ono što je dobro u ovome je da mi možemo
-
tako što ćemo samo menjati tekstualni dokument. To je sve.
-
To je grupa instrukcija (naredbi). Kompjuter će početi
-
sa vrha ovog dokumenta (od početka) i ići naniže
-
čitajući naredbe. Iako ćete kasnije videti
-
da postoje nacini da se "kaže" kompjuteru da preskoči neke naredbe
-
Imajući u vidu rečeno, hajde da napišemo jednostavan program
-
i dok ovo radimo mi ćemo se upoznati sa nekim
-
Dopustite mi da vam napišem veoma jednostavan program.
-
Jedan veoma jednostavan program
-
bio bi bukvalno samo izraz.
-
Stoga, napisaću samo "*print 3+7*" (prikaži 3+7). Ovaj program će bukvalno da
-
uzme "3+7" i prikaže na ekranu. Program će proslediti
-
"3+7" print funkciji koja dolazi u okviru Python jezika.
-
Napisaću ovako: print(3+7).
-
Sačuvaću dokument. Dakle postoji samo jedna naredba ovde
-
na početnoj liniji dokumenta koja kaže *print 3+7*
-
Zapravo, hajde da dodamo još jednu naredbu,
-
da biste videli da će program da se izvrši od početka do kraja (od prve do poslednje komande).
-
Dodaću još jednu liniju: print(2-1)
-
i uradimo ovo: *print("ovo je deo teksta")*
-
Sada, hajde da vidimo šta će ovaj kompijuterski program da uradi.
-
Sačuvaću ga. Sačuvao sam ga kao dokument "testarea.py".
-
.py ekstenzija oznacčva Python dokument.
-
Sada, hajde da izvršimo program. Ono što je lepo kod ovog
-
možete da pišete i izvršavate program na istom mestu.
-
Takođe, ono kodira u boji vas tekst, tako da možete da vidite šta je
-
funkcija, šta nije funkcija, različite tipove podataka...
-
Pokrenimo program da vidimo šta će se desiti.
-
Evo nas, izvršavamo program!
-
Program je prikazao 10, zatim 1 i na kraju
-
"*ovo je deo teksta*".
-
Dakle program je uradio tačno ono sto šmo mu rekli da uradi.
-
I uradio je to u odgovarajućem redosledu.
-
Počeo je ovde, sabrao 3+7 i dobio 10,
-
odštampao rezultat, program je odštampao 10 ovde.
-
Zatim je odštampao 2-1, i na kraju "*ovo je deo teksta*".
-
Sada jedna stvar sa kojom sam želeo da vas upoznam,
-
dosta jednostavno, je ideja o tipovima podataka.
-
Možda kada ste videli ovaj primer,
-
možda ste imali osećaj da postoji nešto drugačije
-
između 3 [tri] ili 2 [dva] ili 1 [jedan] ili 7 [sedam]
i ovog parčeta tkesta.
-
Ovo je broj. Ja mogu da sabiram brojeve. Oni predstavljaju
-
neku količinsku vrstu. Dok ovo ispod predstavlja
-
tekst. I vaša intuicija bi trebalo da bude ispravna.
-
Postoje različite vrste podataka. 3, 7, 1 su
-
brojevne (numeričke) vrednosti. Oni su celi brojevi.
-
A ovo ispod, dole, je zapravo String, koji ste često
-
čuli u kompijuterskoj nauci, a odnose se na niz slovnih karaktera.
-
U Python-u možemo da pitamo koji se tip
-
podataka prosleđuje nekoj funkciji. Na primer, ako ih prosledite funkciji "type"
-
onda će se prikazati i tip podataka od 3+7, ne samo 10.
-
Hajde da probamo. Samo ću prikazati 2-1 da vam pokažem razliku.
-
Zatim ću prikazati tip od ovog parčeta teksta.
-
Sačuvajmo dokument. Pritisnuci CTRL+S na tastaturi, što je prečica za čuvanje.
-
Zatim ću pokušati da izvršim ovaj program. Evo ga.
-
Kompjuter je analizirao ovaj izraz. Počinje sa unutrašnjim zagradama.
-
3+7 je 10. Zatim pokušava da dobije tip (vrstu podataka) od 10, koji je int,
-
tip int, zatim prikazuje da je tip int.
-
Vidite baš ovde. Kaže: tip int.
-
int je skraćenica od Integer (celi brojevi).
-
Zatim kaže print(2-1). Kaže to na ovoj liniji ovde,
-
prikazuje 1, a zatim prikazuje tip od ovog čitavog dela
-
baš ovde. Dakle, umesto prikazivanja teksta,
-
prikazuje njegov tip (vrstu). I njegova vrsta je String.
-
Sledeća stvar sa kojom želim da vas upoznam
-
dok eksperimentišemo sa ovim programom je
-
ideja o promenljivama. Zbog toga što ćemo želeti
-
da čuvamo ove vrednosti na različitim mestima.
-
U sledećim klipovima naučićemo da u Python-u,
-
imamo nešto nalik na etikete za ove vrednosti,
-
i etikete se mogu menjati.
-
Hajde da napišemo totalno drugačiji program
-
korišćenjem promenljivih. Ono što je dobro kod Python-a, iako se
-
nekim ljudima ne dopada, je da se bilo koji tip podataka može
-
staviti u bilo koji tip promenljive.
-
Može se reći *a = 3 + 5*, zatim možemo reći
-
*b = a * a - a - 1*
-
zabeleška: * znaci "puta", koristi se da označi operaciju množenja.
-
zatim moze se reci c=a*b (c je jednako a puta b).
-
Stavicu malo prostora ovde da program napravim malo "cistijim" (preglednijim).
-
Konacno, odstampajmo c. Ukoliko zelitie, mozete da pokusate
-
da razumete kako ce c da izgleda
-
ili mozemo samo da izvrsimo ovaj program.
-
Hajde da izvrsimo program i onda
-
da se vratimo nazad i vidimo ukoliko je program odradio ispravnu stvar.
-
Sacuvacu program i potom ga izvrsiti.
-
Dobili smo 440 za c. Pogledajmo ukoliko ovaj rezultat ima smisla.
-
3+5 je 8. Dakle, etiketa "a" ce se odnositi na 8.
-
Svako mesto u programu, sve dok ne predefinisemo "a",
-
svaki put kada koristimo "a" program ce znati da to znaci 8.
-
Tako da kada krenemo dalje, ovde dole, i definisemo "b" program kaze
-
a*a. Program koristi redosled operacija, tako da prvo izvrsava
-
mnozenje. a*a=64.
-
64-a je 64-8, sto je jednako 56. 56 minus 1 je 55.
-
Dakle "b" je 55. I "c" je a*b,
-
sto je 8 puta 55, so je upravo 440.Tako je sve razradjeno.
-
Mozda zelite da vidite sta se dobije kada
-
dobijete razlicite vrednost "a". Mozete pokusati to da odradite.
-
Mozete pokusati da napravite da je "a" jednako -6
-
i izvrsite program da vidite sta ce se desiti.
-
Dobili smo -246. I sada mozete to da potvrsite i sami.
-
Idite liniju po liniju, i pogledajte na sta se odnose
-
i kako su definisane promenljive,
-
i vidite da li mozete da dobijete ovaj odgovor ovde.
-
Sada, ako su programi samo grupa naredbi
-
kroz koje se prolazi pravolinijski,
-
ne biste bili u mogucnost da radite zaista zanimljive stvari.
-
Da biste radili zaista interesantne stvari, pocecete
-
da vidjate stvari kao sto su uslovi i petlje.
-
hajde da pogledamo uslov. Ostavicu prve linije koda ne promenjene.
-
I kucacu "if(a<0):". U ovom slucaju, zadacemo print(c) naredbu
-
zatim odkucati "else", i u ovom slucaju zadacemo print (c-a).
-
ovo je interesantno. Mozda vec imate ideju
-
sta ce se dogoditi ovde. Ali sacuvajmo dokument.
-
Neverovatno je koliko mozete da uradite samo
-
sa ovim islovima. Dakle, ovo nam govori da
-
ako je "a" manje od nule, uradi ovo, u suprotnom
-
ako "a" nije manje od 0, uradi ovo ovde.
-
Primetite da ne idemo direktno nadole.
-
U zavisnosti od "a", da li je vece ili manje od 0,
-
program ce da izvrsi ili ovu liniju ovde,
-
ili ce da izrvrsi ovu liniju ovde.
-
Naci na koji Python zna da izvrsi samo
-
"print(c)" ako je"a" manje od 0 je zato sto je
-
print(c) uvuceno. Uvucen je ovaj deo uslova.
-
Nacin na koji Python zna da postoje novi uslove za njega
-
je zbog ove kolone ovde.
-
Ukoliko "a" nije manje od 0, onda program izvrsava ovaj 'else" uslov.
-
Ukoliko zelite da uradite nesto drugo nakon ovoga,
-
bez obzira da li je "a" vece od 0 ili ne,
-
mozete da se oslobodite ovog uslova tajo sto cete se osloboditi
-
uvlacenja. Dakle, sada mozemo samo da odstampamo niz.
-
Zapravo, hajde da dodamo nesto vise ovom uslovu.
-
Hajde da odstampamo ovde "a<0"
-
Obratite paznju: ovo nece biti ocenjivano (analizirano).
-
Imamo ovo u okviru niza, tako da ce program samo
-
to odstampati. na ovom mestu, recicemo
-
print("a nije manje od 0").
-
Ovo je interesantan program. Hajde da ga pokrenemo sad.
-
Nadajmo se da ce se pokrenuti. Sacuvao sam fa. Sada, hajde da izvrsimo program.
-
I odstampao je 'a<0", tako da pokazuje da smo unutar ovog uslova.
-
Zatim je odstampao "c", koji iznosi -246.
-
program ne izvrsva ovo, zato sto bi to bilo izvrseno samo
-
ako "a" nije bilo manje od 0.
-
Ali kada izbegne ovaj uslov, tada stampa
-
"gotovi smo sa ovim programom" bez obzira na sve.
-
Hajde sada da promenimo "a" i vidimo sta cemo dobiti kada
-
pokrenemo ovaj drugi uslov. Hajde da napravimo da je "a" vece od 0.
-
Hajde da stavimo da je "a" jednako 9 i pokrenemo program.
-
Dakle, "a" je 9. Program proverava "da li je a manje od 0?",
-
pa, "a" nije manje od 0, pa nece
-
izvrsiti ovo, vec ce preci na else uslov.
-
Dakle, odstampace "a nije manje od 0",
-
koje sam ja uradio ovde, zatim ce odstampati c-a
-
sto je 630. Preskace ovaj uslov,
-
i bez obzira da li je "a" manje od 0 ili ne,
-
stampa "gotovi smo sa ovim programom".