SEMINAR
|
|
- Aleš Janežič
- пре 5 година
- Прикази:
Транскрипт
1 Lekcija 12 Uvod u Python programski jezik Cilj Cilj lekcije je da se studenti upoznaju sa: Python programskim jezikom i programskim okruženjem Spyder Tipovima podataka koji se koriste u Python programskom jeziku Petljama i strukturama Učitavanjem biblioteka Radom sa funkcijama Radom sa različitim tipovima datoteka Python i programsko okruženje Spyder Python je programski jezik visokog nivoa i opšte namene. Dizajniran je tako da se povećava čitljivost koda, a njegova sintaksa omogućava korisnicima brzo i jednostavno rešavanje problema. Podržava različite stilove programiranja kao što su objektnoorijentisano, funkcionalno i proceduralno programiranje. Kreiran je tako da direktno interpretira komande u mašinske instrukcije. Tvorac Python programskog jezika je Guido van Rossum (1990). Postoje dve verzije Python programskog jezika (Python 2.x i 3.x). Između ove dve verzije postoji mali broj razlika (kao npr. funkcija print, deljenje celih brojeva ). Veliki broj funkcija koje se koriste za rad sa podacima u Python-u se nalazi u bibliotekama (modulima) koji ne dolaze uz osnovnu instalaciju. Postoje različita okruženja za Python programski jezik (Spyder, PyCharm, Canopy ). Napomena: Na ovim časovima će se koristiti Spyder okruženje i verziju Python 3.7. Anaconda distribuciju zajedno sa Spyder okruženjem možete preuzeti na sledećem linku: Pokrenuti Spyder programsko okruženje. Otvara se prozor kao na Sl Osnovna arhitektura ovog okruženja se sastoji od četiri glavna dela: a) Konzola služi za prikaz rezultata izvršavanja.py skripte, kao i izvršavanje komandi jednu po jednu. Kucanjem naredbi u konzoli se automatski dobija rezultat izvršavanja. b) Editor služi za pisanje.py skripti sa programskim kodom. Za razliku od pisanja koda u konzoli, pisanjem koda u skripti su lakše izmene koda, kao i dodavanje delova koda. Veza između korisnika i skripte se vrši preko konzole, o čemu će biti reči kasnije. c) Variable explorer sliži za pregled svih varijabli koje su se pojavile nakon izvršavanja koda; File explorer služi za pregled svih datoteka koje se nalaze u trenutnom folderu; Help služi za objašnjenja funkcija. Informacije o funkciji se dobijaju prilikom kucanja komande help(funkcija) u konzoli. d) Putanja ka trenutnom folderu u kome se nalazimo. Ukoliko želimo da pozivamo neke spoljašnje datoteke (.txt,.xslx,.csv) u kodu, potrebno je da se putanja ka
2 toj datoteci slaže sa putanjom ka trenutnom folderu. U suportom će program prijaviti grešku kako ne može da nađe zadatu datoteku. d c b a Sl Spyder programsko okruženje 12.2 Tipovi podataka u Python-u U Python programskom jeziku nije potrebno navoditi tip promenljive, već on ima mogućnost da sam prepozna tip podatka. Osnovni tipovi podataka su: 1. Logički tip promenljivih (boolean) 2. Brojevi dele se u tri grupe: celi brojevi (integer), realni brojevi (float) i kompleksni brojevi (complex). Napomena: svi brojevi koji imaju u sebi decimalnu tačku se smatraju realnim brojevima, uključujući i slučaj da se nakon decimalne tačke nalazi 0 (npr. 15.0). 3. Sekvence konačni uređeni skupovi koji mogu da se indeksiraju celim brojevima. U ovu grupu spadaju stringovi, liste i torke. U Python konzoli se direktno može upisati neki matematički izraz ili izvršiti poziv neke funkcije. Rezultat izvršavanja komande se može, ali ne mora dodeliti nekoj promenljivoj. Ukoliko se rezultat dodeli promenljivoj, on se neće ispisati u konzoli (Sl ). Sl Rezultat izvršavanja matematičkog izraza u konzoli programskog okruženja Spyder 2
3 Otvoriti Variable explorer. Primetiti da se u njemu nalazi promenljiva a na spisku svih promenljivih (Sl ) i da joj je klasifikovana kao realni tip promenljive.. Sl Primer prikaza promenljive u Variable explorer prozoru Kao rezultat izvršavanja funkcije type(x) se dobija tip promenljive x. Moguće je i menjanje tipa promenljiva. Funkcijom cast(x) promenljiva x prelazi u tip cast (Sl ). Sl Primer promene tipa promenljive a Zadatak Učitati promenljive x i y u konzoli. Vrednost promenljive x neka bude zadatak, a promenljiva y je jednaka 17. U Variable explorer-u proveriti tip promenljivih x i y. Logičke operacije: Logičke operacije su definisane na operandima koji su tipa boolean (mogu da imaju vrednost True ili False). Rezultat izvršavanja je takođe boolean. Tip operacije Logičko i Logičko ili Logička negacija Simbol and or not Operacije nad brojevima: Nad brojevima je moguće primeniti klasične matematičke operacije: Tip operacije Simbol Sabiranje + Oduzimanje - Množenje * Deljenje / Celobrojno deljenje // Ostatak pri deljenju % Stepenovanje ** U Python verziji 2.x ukoliko su oba operanda celi brojevi prilikom deljenja dolazi do celobrojnog deljenja. U Python verziji 3.x to nije slučaj, već je potrebno eksplicitno definisati potrebu za celobrojnim deljenjem pomoću odgovarajućeg operatora. Ostale matematičke funkcije (sin, cos, sqrt ) ne pripadaju osnovnom paketu, već je potrebno učitati dodatnu biblioteku. Zadatak U konzoli učitati promenljive b1 = 92, a b2 = 13. Izračunati koliko puta se broj b2 sadrži u broju b1 i ostatak pri deljenju broja b1 sa brojem b2. 3
4 Nad brojevima je moguće primeniti i operacije poređenja: Tip operacije Simbol Jednako == Nije jednako <>,!= Veće od > Manje od < Veće ili jednako od >= Manje ili jednako od <= Kompleksni brojevi: Kompleksni brojevi u Python programskom jeziku se mogu definisati na dva načina (Sl ): i. Eksplicitno pomoću imaginarne jedinice j ii. Pomoću funkcije complex(realni_deo, imaginrni_deo) Sl Primeri definisanja kompleksnih brojeva Osnovne funkcije koje se primenjuju nad kompleksnim brojevima su: Tip operacije Simbol Realni deo p.real Imaginarni deo p.imag Moduo abs(p) Konjugovano-kompleksni broj p.conjugate() Zadatak U konzoli definisati kompleksni broj z = 11 + j7. Izračunati moduo broja z1 na dva načina: 1) pomoću funkcije abs() i 2) pomoću formule real 2 + imag 2. Kvadratni koren izračunati kao stepenovanje sa brojem 0.5. Liste: Liste predstavljaju niz elemenata odvojenih zarezom koji se nalaze unutar uglastih zagrada (Sl ). Elementi liste mogu biti različitog tipa. Sl Primer kreiranja jedne liste Elementima liste je moguće pristupiti indeksiranjem pomoću uglastih zagrada []. Indeksiranje u Python-u počinje od 0! Moguće je vršiti dodelu vrednosti nekom elementu u listi. Pristupanju elementu liste koji nije još definisan dovodi do greške. Tip operacije Prvi element liste i-ti element liste Simbol lista[0] lista[i] 4
5 Poslednji element liste lista[-1] Deo liste od i-tog do (k-1)-tog elementa lista[i:k] Deo liste od i-tog do poslednjeg elementa Lista[i:] Liste u Python-u se posmatraju kao objekti koje sadrže svoje podatke, metode i funkcije. Metodama i funkcijama se pristupa pomoći operatora.. Osnovne funkcije nad listama su: Tip operacije Dužina liste Dodavanje elementa na kraj liste Uklanjanje elementa liste na određenom indeksu Uklanja određeni element iz liste Sortiranje liste pri čemu se originalna lista menja Sortiranje liste pri čemu se originalna lista ne menja Simbol len(lista) lista.append(element) del(lista[indeks]) lista.remove(element) lista.sort() sorted(lista) Dve liste se mogu međusobno sabrati pomoću operatora +, pri čemu se tada jedna lista nadodaje na drugu. Takođe, jedna lista se može umnožiti nekoliko puta pomoću operatora * (Slika ). Sl Primena operacija sabiranja i množenja nad listama Zadatak U konzoli kreirati tri liste koje sadrže po dva elementa. Svaka lista predstavlja jedno teme trougla, a elementi liste su x i y koordinata temena. Izračunati stranice trougla pomoću formule s = (x 1 x 2 ) 2 + (y 1 y 2 ) 2. Izračunati površinu trougla pomoću formule P = s(s a)(s b)(s c), gde je s poluobim. Kvadratni koren izračunati kao stepenovanje sa brojem 0.5. U Python-u ime liste pokazuje na objekat te liste. Tako da ukoliko se kreira nova lista na osnovu već postojeće liste (lista2 = lista1) tada se samo kreira novi pokazivač ka istom objektu. To znači da sve pomene nad novom listom, utiču na promene stare liste. Korišćenjem naredbe lista2 = lista1[:] se kreira nov objekat, tj. vrši se kloniranje liste. Zadatak U konzoli kreirati listu temperatura koja sadrži vrednosti hladno, toplo i vruce. Kreirati listu prognoza=temperatura. Promeniti drugi element liste prognoza u suncano. Proveriti elemente liste temperatra. Kreirati listu vreme=temperatura[:]. Promeniti prvi element liste vreme u oblacno. Pogledati elemente liste temperatura. Stringovi: Stringovi predstavljaju niz simbola koji se nalazi između navodnika ( ) ili apostrofa ( ). Dva stringa se mogu međusobno spojiti pomoću operatora +. Takođe, string se može umnožiti nekoliko puta pomoću operatora * (Sl ). 5
6 Sl Primer manipulacija sa stringovima Pomoću funkcije input(tekst_poruke) je moguće iz konzole pročitati poruku korisnika. Najpre se korisniku ispisuje tekst_poruke, a zatim korisnik treba da upiše njegovu poruku. Korisnikova poruka se čuva u odgovarajućoj promenljivoj kao tip string (Sl ). Funkcija input blokira izvršavanja ostatka koda sve dok korisnik ne unese neku poruku. Moguće je ispisati rezultat izvršavanja koda korisniku pomoću funkcije print(poruka). Sl Primer korišćenja input funkcije Zadatak Zatražiti korisniku da unese željenu vrednost površine trougla. Poveriti da li je željena površina veća od površine izračunate u zadatku Napomena: obratiti pažnju da funkcija input vraća string i da je potrebno izvršiti konverziju tipa podatka Strukture i petlje Python programski jezik razdvaja blokove pomoću uvlačenja teksta, za razliku od drugih programskih jezika koji koriste ključne reči ili vitičaste zagrade. Na taj način se povećava čitljivost samog koda. Uvlačenje tekste se primenjuje kod while i for petlje, if strukture, definisanja funkcija IF struktura: IF struktura određuje koji deo koda se izvršava u zavisnosti od uslova (Sl ). Uslov je tipa boolean. Deo koda 1 Deo koda 1 Deo koda 2 Deo koda 2 Deo koda 3 Deo koda 3 Sl Princip funkcionisanja if strukture 6
7 Zadatak Potrebno je napisati program kojina osnovu kategorije avionske karte određuje da li korisnik ima prtljag koji je teži od dozvoljenog. 2. Korisnik preko konzole treba da unese kategoriju svoje karte (funkcije input): 1) K1, dozvoljen prtljag do 8 kg, 2) K2, dozvoljen prtljag do 15 kg i 3) K3, dozvoljen prtljag do 20 kg. 3. Nakon unosa kategorije, od korisnika treba da se traži da unese i težinu njegovog kofera. 4. Na osnovu kategorije avionske karte, ispitati da li je težina kofera veća od dozvoljene. Ukoliko jeste ispisati korisniku poruku u konzoli (funkcija print). 5. Sačuvati skriptu pod imenom 12_03_01.py. 6. Pokrenuti i testirati program. Python skripta se pokreće iz padajućeg menija Run>>Run ili prečicom F5 na tastaturi. Moguće je pokretanje i klikom na. WHILE petlja: WHILE petlja služi za ponavljanje dela koda sve dok je ispunjen uslov (Sl ). Uslov je tipa boolean. Petlja može da se prekine naredbom break, čak i ako je i dalje ispunjen uslov. Sl Tok izvršavanja while petlje. Petlja će se završiti ili ukoliko je nije ispunjen uslov1 ili ukoliko dođe do break-a. Zadatak Napisati program u kome korisnik preko tastature unosi niz pozitivnih brojeva. Korisnik treba da unosi broj po broj, sve dok ne unese karakter x. Uneti brojevi se čuvaju u listi. Na kraju izvršavanja programa potrebno je ispisati najveći broj u listi. 2. Dodati promenljive broj sa početnom vrednošću 0 i lista sa početnom vrednošću []. Pomoću praznih uglastih zagrada je kreirana prazna lista. 3. Kreirati while petlju koja će se ponavljati sve dok promenljiva broj ne postane x. Unutar petlje treba konvertovati broj u tip float, a zatim ga treba dodati u listu (funkcija append) i pitati korisnika da unese novi broj (pomoću funkcije input). 7
8 4. Nakon završetka while petlje potrebno je pronaći najveći broj iz liste. Jedan od načina je pomoću funkcije max(). 5. Pomoću funkcije print ispisati korisniku koji je najveći broj uneo. 6. Sačuvati skriptu pod imenom 12_03_02.py. 7. Pokrenuti i testirati program. FOR petlja: FOR petlja se za razliku od while petlje ne izvršava sve dok je ispunjen zadati uslov, već dok god ima elemenata u nekoj datoj sekvenci (Sl ). For petlja se takođe može zaustaviti pomoću naredbe break. Sl Primer korišćenja for petlje For petlja može da vrši iteracije na više načina. Najčešće se koristi funkcija range() koja generiše niz brojeva u zadatom opsegu. Sekvenca može biti i u rastućem i u opadajućem poretku. Poziv funkcije Generisana sekvenca range(n) 0, 1, 2,, n-1 range(m, n) m, m+1, m+2,, n-1 range(m, n, step) m, m+step, m+2*step,, n-step Zadatak Napisati program koji ispisuje n parnih brojeva. 2. Od korisnika tražiti da unese broj n. 3. Pomoću for petlje ispisati sve parne brojeve u konzoli (funkcija print). Vršiti iteracije kroz petlju pomoću funkcije range(). 4. Sačuvati program pod nazivom 12_03_03.py. 5. Pokrenuti i testirati program. For petlja može vršiti i iteracije kroz elemente liste, stringa ili niza (Sl ). Sl Primer for petlje koja prolazi kroz sve elemente liste L i računa zbir elemenata liste Biblioteke U Python programskom paketu se nalaze samo osnovne funkcije za rad sa podacima. Ukoliko je potrebno vršiti naprednije manipulacije nad promenljivima potrebno je učitati odgovarajuću biblioteku. Python poseduje veliki broj biblioteka koje su već oformljene za različite probleme. Najčešće se koriste biblioteke numpy, matplotlib, scipy, pandas 8
9 Biblioteke se učitavaju pomoću ključne reči import. Postoje različiti načini učitavanja biblioteke: Način uključivanja Pozivanje funkcija iz biblioteke Objašnjenje import numpy numpy.sin(numpy.pi) Potrebno je uneti celo ime modula import numpy as np np.sin(np.pi) Funkcije se pozivaju korišćenjem skraćenice np from numpy import * sin(pi) Funkcije postaju deo okruženja pa nije potrebno koristiti ime modula Dodavanje svih funkcija neke biblioteke kao deo podrazumevanog prostora se ne preporučuje, jer može doći do mešanja funkcija sa istim nazivom iz različitih biblioteka. Ukoliko biblioteka nije instalirana u okruženju može se instalirati iz komandnog prozora. Iz Start menija otvoriti Anaconda prompt. Kucanjem komande pip install ime_biblioteke i pritiskom tastera enter će se instalirati potrebna biblioteka. Zadatak Napisati program koji ispisuje vrednost funkcije y = e x za x [a, b]. 2. Učitati biblioteku math pomoću naredbe import 3. Pomoću for petlje proći kroz sve vrednosti između a i b. Samostalno izabrati a, b i korak (funkcija range). 4. Izračunati vrednost funkcije y za trenutno x pomoću funkcije exp iz biblioteke math. U svakoj iteraciji petlje prikazati rezultat korisniku. 5. Sačuvati program pod nazivom 12_04_01.py. 6. Pokrenuti i testirati program. Numpy biblioteka: Numpy biblioteka je kreirana za tzv. Scientific computing. Omogućava vrlo efikasan rad sa višedimenzionalnim nizovima. Nizovi u Python-u podsećaju na liste, ali svi elementi niza moraju biti istog tipa i indeksiranje je moguće samo nenegativnim brojevima. Nizovi se mogu kreirati na više načina: Tip operacije Simbol Kreiranje niza prvog reda np.array([1, 2, 3]) Kreiranje niza ispunjenog nulama dimenzija mxn np.zeros((m, n)) Kreiranje niza ispunjenog jedinicama dimenzija mxn np.ones((m, n)) Kreiranje niza ispunjenog brojem b dimenzija mxn np.full((m, n), b) Kreira niz brojeva u opsegu [a, b], sa korakom k np.arange(a, b, k) Kreira n brojeva u opsegu [a, b] np.linspace(a, b, n) Indeksiranje elemenata niza se vrši pomoću uglastih zagrada (Sl ). U primeru je kreirana matrica a kao dvodimenzionalni niz. 9
10 Sl Primer izdvajanja elemenata niza Numpy biblioteka koristi osnovne matematičke operacije nad nizovima ili matricama elementwise. To znači da primenjuje neku matematičku operaciju na svaki član posebno. Zadatak Napisati program koji računa zbir svih elemenata matrice, kao i srednju vrednost svake kolone M = [ ] 2. Učitati biblioteku numpy pomoću naredbe import 3. Kreirati matricu M kao na Sl Pomoću funkcije sum iz biblioteke numpy izračunati sumu svih elemenata matrice M. 5. Pomoću funkcije mean iz biblioteke numpy izračunati srednju vrednost svake kolone. Funkcija mean ima obavezan argument (promenljivu čija se srednja vrednost računa) i opcioni argument (osu po kojoj računa, 0 uzima svaku kolonu posebnu, 1 uzima svaki red posebno). 6. Sačuvati program pod nazivom 12_04_02.py. 7. Pokrenuti i testirati program. Matplotlib biblioteka: Matplotlib biblioteka se najčešće koristi za grafički prikaz podataka. Da bi podaci mogli da se grafički prikažu potrebno je definisati vektor x-koordinata i vektor y-koordinata (za 2D slučaj). Prilikom prikaza grafika vektori x i y moraju biti istih dimenzija. Naredba plot se koristi za crtanje kontinualnih signala. Prvi argument ove funkcije je raspodela x ose, a drugi predstavlja vrednosti na y osi. Prostor između dve poznate tačke se na grafiku aproksimira pravom linijom. To znači da što je finija podela x-ose to će grafik izgledati glađe. Primer izgleda grafika dobijenog pomoću plot funkcije je prikazan na Sl Sl Primer generisanja grafika pomoću naredbe plot (levo) i odgovarajući grafik (desno) 10
11 Naredba figure otvara novi prostor za crtanje grafika. Ukoliko se ne pozove ova naredba signali na grafiku će se prikazivati jedan preko drugog. Zadatak Nacrtati funkciju x(t) = cos(2πf 1 t) + 5sin(2πf 2 t), ako je f 1 =10 Hz i f 2 =7 Hz, a t je u rasponu od 0 do 1 s. 2. Učitati biblioteke numpy i matplotlib.pyplot pomoću naredbe import 3. Kreirati vremensku osu t u opsegu od 0 do 1 s sa odgovarajućem brojem tačaka (koristiti funkciju linspace). 4. Formirati signal x(t) i prikatati ga na grafiku pomoću funkcije plot. 5. Sačuvati program pod nazivom 12_04_03.py. 6. Pokrenuti i testirati program. Naredba stem se koristi za crtanje diskretnih signala. Pozivanje funkcije je isto kao i kod naredbe plot, samo što se susedne tačke ne spajaju. Primer izgleda grafika dobijenog pomoću stem funkcije je prikazan na Sl Sl Primer generisanja grafika pomoću naredbe stem (levo) i odgovarajući grafik (desno) Zadatak Nacrtati funkciju y(n) pomoću naredbe stem. Promenljive n i y definisati kao numpy nizove. y(n) = 1, n = 1 5, n = 2 6.2, n = n = 4 11, n = 5 3, n = 6 { 0, ostalo 1. U skripti 12_04_03.py dodati formiranje signala y i n. 2. Otvoriti novu figuru. Pomoću naredbe stem prikazati signal y u zavisnosti od n. 3. Pokrenuti i testirati program. Ova biblioteka omogućava obeležavanje grafika u vidu definisanja naziva osa (plt.xlabel, plt.ylabel), dodavanje naziva grafika (plt.title), definisanje granica x i y ose u kojima će se prikazivati signal (plt.xlim, plt.ylim), dodavanje mreže (plt.grid) Ukoliko se na istom grafiku prikazuje više signala potrebno je dodati i legendu. Funkcija legend treba da ima onoliko argumenata koliko ima različitih signala na grafiku. Primer potpuno definisanog grafika je dat na Sl
12 Sl Primer generisanja obeleženog grafika (levo) i odgovarajući grafik (desno) Pomoću naredbe subplot moguće je prikazati više signala na posebnim graficima u okviru jedne figure. Naredba plt.subplot(m, n, g) generiše matricu grafika u jednoj figuri dimenzija mxn i vraća pokazivač na polje g. Primer pozivanja funkcije subplot je prikazan na Sl Korišćenjem funkcije subplot potrebno je za svaki grafik obeležiti grafik. Sl Primer generisanja pomoću funkcije subplot (levo) i odgovarajući grafik (desno) Zadatak Nacrtati grafike funkcija sin(t), cos(t), sin(3t) i cos(3t) 4. U editoru otvoriti novu.py skriptu (File>>New File). 5. Učitati biblioteke numpy i matplotlib.pyplot pomoću naredbe import 6. Kreirati vremensku osu t u opsegu od 0 do 15 s sa odgovarajućem brojem tačaka (koristiti funkciju linspace). 7. Pomoću funkcije subplot u jednoj figuri prikazati signale sin(t) i sin(3t) na jednom grafiku, a signale cos(t) i cos(3t) na drugom grafiku. 8. Obeležiti ose, dodati legendu, dodati naslov grafika. 9. Sačuvati program pod nazivom 12_04_05.py. 10. Pokrenuti i testirati program Funkcije Funkcije sadrže delove koda koji se više puta koriste u glavnom kodu. Funkcija započinje sa ključnom reči def nakon koje se definiše naziv funkcije. Svaka funkcija može, ali ne mora imati ulazne argumente. Zatim, može se definisati docstring koji 12
13 sadrži kratak opis funkcije. Na kraju, nalazi se telo funkcije. Prikaz definisanja funkcije je dat na Sl Naziv docstring kratak opis funkcije, specifikacije Pozivanje funkcije u kodu Sl Definisanje funkcije paran koja proverava da li je dati broj paran. Pozivanje funkcije u kodu se vrši navođenjem njenog imena i potrebnih argumenata. Zadatak Napisati funkciju koja računa elemente Fibonačijevog niza. Fibonačijev niz počinje brojevima 0 i 1, a svaki sledeći član se računa po formuli: f n = f n 1 + f n 2, n = 3,4,5 Korisnik treba da zada broj elemenata Fibonačijevog niza koji treba da se izračunaju. 2. Definisati funkciju fibonacci sa jedanim ulaznim argumentom n koji označava broj elemenata. U telu funkcije je potrebno definisati promenljivu niz tipa liste sa početnom vrednošću [0, 1]. U svakoj iteracije for petlje izračunati novi član niza i dodati ga u listu niz (funkcija append). Nakon završetka for petlje vratiti listu niz u glavni program (ključna reč return). 3. U glavnom delu programa zatražiti od korisnika da unese broj elemenata niza (funkcija input), a zatim iskoristiti tu vrednost pri pozivu funkcije. 4. Sačuvati program pod nazivom 12_05_01.py. 5. Pokrenuti i testirati program Argumenti funkcije se dele na obavezne i opcione argumente. Obavezne argumente je potrebno definisati prilikom poziva funkcije, tj. dodeliti im neku vrednost. Ukoliko se prilikom definisanja funkcije nekom argumentu dodeli podrazumevana vrednost tada on postaje opcioni argument. To znači da korisnik može da pozove funkciju bez dodele vrednosti tom argumentu, i u telu funkcije će se koristiti podrazumevana vrednost. Posmatrajmo primer funkcije koja ima zadatak da izračuna PDV na zadatu cenu. Ulazni parametri funkcije su zadata cena x i stopa PDV-a stopa. Argumentu stopa je dodeljena podrazumevana vrednost 20 (Sl ). 13
14 Sl Definisanje funkcije pdv Prilikom pozivanja funkcije može se iskoristi ime argumenta. Na taj način ukoliko postoji veliki broj opcionih argumenata ne moraju se navoditi vrednosti za sve argumente, već samo za one čiju podrazumevanu vrednost želimo da promenimo. Ovo je prednosti u odnosu na druge programske jezike. Sam poziv funkcije se može izvršiti na više načina: Poziv funkcije Objašnjenje Početna cena x je 200, a stopa uzima podrazumevanu pdv(200) vrednost pdv(200, 10) Početna cena x je 200, a stopa je 10 Funkcija se poziva preko imena argumenata, redosled pdv(x = 200, stopa = 10) navođenja argumenata ne mora biti kao pri definiciji funkcije Ukoliko se neka vrednost argumenata navede bez imena, odmah se dodeljuje obaveznom argumentu. pdv(200, stopa = 10) Ukoliko ima više obaveznih argumenata, vrednosti se dodeljuju redom, kao u definiciji funkcije Dolazi do greške zato što se argumentu x dva puta pdv(200, x = 5) dodeljuje neka vrednost Funkcija može da vraća i više vrednosti tako što se one grupišu pomoću običnih zagrada: return (a, b). Prilikom poziva funkcije potrebno je smestiti rezultat u onoliko promenljivih koliko se vraća iz funkcije (Sl ). Sl Vraćanje više vrednosti iz funkcije Prilikom pozivanja funkcije javljaju se stvarni i formalni parametri. Stvarni parametri pripadaju globalnom prostoru i oni se nalaze u glavnom programu. Formalni parametri se vezuju za vrednost stvarnih parametara prilikom poziva funkcije. Unutar funkcije se može pristupiti promenljivama koje su definisane u glavnom delu programa. Prilikom svakog pozivanja funkcije definiše se novi domen (Sl ). Obratiti pažnju da 14
15 promenljiva x postoji i u glavnom kodu i u funkciji, ali ima različite vrednosti. Ukoliko dođe do preklapanja imena, funkcija ima mogućnost da utiče samo na izmenu promenljive x koja je definisana unutar nje. Globalni domen Domen funkcije f 3 x 4 x Kod funkcije f Rezultat izvršavanja funkcije z Sl Domen važenja varijabli Zadatak Napisati funkciju koja računa površinu geometrijskog oblika: kvadrat, pravougaonik ili trougao. Funkcija treba da ima tri argumenta: x (float), y (float) i tip oblika (string). Tip oblika treba da ima podrazumevanu vrednost k za kvadrat, a y ima podrazumevanu vrednost 0. U zavisnosti od tipa predmeta treba da se primeni drugačija formula za površinu: Kvadrat Pravougaonik Trougao P = x 2 P = x y x y P = 2 2. Definisati funkciju povrsina sa tri ulazna argumenta kao što je opisao u postavci zadatka. 3. Telo funkcije treba da sadrži računanje površine u zavisnosti od tipa geometrijskog oblika. U glavni program se vraća izračunata površina. 4. U glavnom programu pozvati funkciju i ispisati rezultati izvršavanja korisniku. 5. Sačuvati program pod nazivom 12_05_02.py. 6. Pokrenuti i testirati program za različite kombinacije ulaznih parametara funkcije 12.6 Rad sa datotekama U zavisnosti od tipa datoteke koju želimo da učitamo u naš program postoje različite biblioteke sa funkcijama za rad sa datotekama. Podaci za obradu su najčešće smešteni u tekstualnim datotekama ili.csv datotekama (comma separated values). Bitna stvar na koju treba obratiti pažnju prilikom učitavanja datoteka jeste da trenutni folder u kome se Spyder nalazi mora da se poklopi sa folderom u kom se nalazi datoteka. Prilikom definisanja imena datoteke iz koje čitamo podatke potrebno je definisati i ekstenziju, npr. ime_datoteke = proba.txt. 15
16 Rad sa tekstualnim datotekama: Funkcija za učitavanje tekstualne datoteke se nalazi osnovnom paketu. Poziv funkcije d = open( ime_datoteke, tip) d.read() d.readline() d.readlines() d.write() d.close() Objašnjenje Otvaranje datoteke. Parametar tip može imati vrednosti r (read), w (write) ili a (add). U zavisnosti od tipa, iz datoteke može da se čita sadržaj, da se upisuje sadržaj u nju ili da se doda sadržaj u nju. Podrazumevana vrednost je r. Čitanje celog sadržaja datoteke. Kad se jednom pročita sadržaj, pri ponovnom pozivanju ove funkcije vraća se prazna datoteka. Rezultat ove funkcije je tipa string. Čitanje samo jednog reda tekstualne datoteke. Kada se opet pozove ova funkcija vraća se sledeći red teksta, sve dok se ne pročitaju svi redovi. Rezultat koji vraća ova funkcija je tipa string. Čitanje svih redova tekstualne datoteke. Rezultat koji vraća ova funkcija je lista stringova, pri čemu svaki element liste odgovara jednom redu teksta. Upisivanje sadržaja u datoteku. Zatvarfanje datoteke. Nakon zatvaranja datoteke nije moguće vršiti nikakve manipulacije sa njom. Kroz datoteku je moguće proći pomoću for petlje. U svakoj iteraciji for petlje se čita novi red u datoteci, sve dok se ne dođe do kraja datoteke (Sl ). Sl Čitanje teksta iz datoteke Zadatak Napisati program kopira sadržaj liniju po liniju iz jedne tekstualne datoteke u drugu. 2. Podesiti putanju trenutnog foldera u Spyder okruženju tako da se slaže sa putanjom ka datotekama. 3. Otvoriti datoteku iz koje će se čitati sadržaj. Otvoriti datoteku u koju će se upisivati sadržaj. 16
17 4. Svaki red iz ulazne datoteke kopirati u jedan red u izlaznoj datoteci (koristiti for petlju). 5. Po završetku kopiranja, zatvoriti obe datoteke. 6. Sačuvati program pod nazivom 12_06_01.py. 7. Pokrenuti i testirati program za ulaznu tekstualnu datoteku koju samostalno kreirate. Ukoliko.txt datoteka sadrži samo numeričke podatke može se učitati na lakši način pomoću funkcije loadtxt iz biblioteke numpy (Sl ). Rezultat izvršavanja ove funkcije je tipa float ili numpy niz float vrednosti. Sl Primer čitanja podataka iz.txt datoteke pomoću funkcije loadtxt Zadatak Napisati program koji učitava signal iz datoteke EKG.txt i prikazuje ga na grafiku. U datoteci se nalaze odbirci EKG signala, koji su odabirani sa frekvencijom odabiranja od 100 Hz. 2. Podesiti putanju trenutnog foldera u Spyder okruženju tako da se slaže sa putanjom ka datoteci. 3. Učitati biblioteke numpy i matplotlib.pyplot 4. Učitati sadržaj datoteke pomoću funkcije loadtxt. Kreirati promenljivu fs = 100. Kreirati vremensku osu pomoću funkcije arange. Vremenska osa treba da ima vrednosti od 0 do length(signal)/fs sa korakom 1/fs. 5. Na grafiku prikazati EKG signal u zavisnosti od vremena. Obeležiti ose grafika i dodati naslov grafika. 6. Sačuvati program pod nazivom 12_06_02.py. 7. Pokrenuti i testirati program. Rad sa.csv datotekama: Ponekad se podaci osim u.txt datoteka čuvaju u vidu Excel tabele sa ekstenzijom.csv. Funkcije za učitavanje.csv datoteka se nalaze u biblioteci pandas. Datoteke sa ekstenzijom.csv u sebi sadrže podatke koji su najčešće razdvojene zarezom. Funkcija koja omogućava čitanje podataka se zove read_csv. Ova funkcija ima veliki broj argumenata. Najznačajniji argumenti ove funkcije su filepath (putanja do datoteke iz koje želimo da čitamo podatke) i sep (separator između kolona. Podrazumevana vrednost je ','). 17
18 Kao rezultat, ova funkcija vraća data frame. Data frame tip podataka je sličan kao matrice, samo što različite kolone mogu imati različite tipove promenljivih, ali unutar jedne kolone svi podaci moraju biti istog tipa. Takođe, kolone data frame-a mogu imati naziv preko koga je moguće pristupiti članovima te kolone pomoću operatora.. Primer korišćenja ove funkcije je dat na Sl Sl Primer čitanja podataka iz.csv datoteke pomoću funkcije read_csv Zadatak Napisati program koji učitava signale iz datoteke GSR.csv. Izračunati srednju vrednost i standardnu devijaciju svakog od četiri GSR signala i prikazati podatke na grafiku u vidu error bar-a. 2. Podesiti putanju trenutnog foldera u Spyder okruženju tako da se slaže sa putanjom ka datoteci. 3. Učitati biblioteke numpy, matplotlib.pyplot i pandas 4. Učitati sadržaj datoteke pomoću funkcije read_csv. Nakon učitavanja dobijeni data frame ima 4 kolone koje predstavljaju različite GSR signale. 5. Pomoću funkcije mean iz biblioteke numpy izračunati srednju vrednost svake kolone data frame-a. Smestiti rezultat u promenljivu m. 6. Pomoću funkcije std iz biblioteke numpy izračunati standardnu devijaciju svake kolone data frame-a. Smestiti rezultat u promenljivu sd. 7. Otvoriti novu figuru. Iz biblioteke matplotlib.pyplot iskoristiti funkciju errorbar za prikaz greške. Error bar je pogodan za vizualizaciju podataka i rezultata u smislu odstupanja od srednje vrednosti. Ova funkcija kao ulazne argumente prima podelu x-ose, vrednosti na y-osi i grešku za svaki odbirak po y-osi. Formirati x-osu tako da ima vrednosti od 1 do 4, za svaki od četiri GSR signala. Argument y treba da bude jednak m, a argument yerr je jednak sd. Poziv funkcije je plt.errorbar(x, m, yerr=std). Moguće je dodati opcioni argument fmt sa vrednošću. kako se ne bi spojile tačke na grafiku. 8. Obeležiti ose na grafiku i dodati naslov. 9. Sačuvati program pod nazivom 12_06_03.py. 10. Pokrenuti i testirati program. 18
Funkcije predavač: Nadežda Jakšić
Funkcije predavač: Nadežda Jakšić do sada su korišćene "gotove" funkcije iz standardnih biblioteka (cin, cout...) one su pozivane iz main funkcije koja je glavna funkcija u programu jer izvršavanje programa
ВишеPROMENLJIVE, TIPOVI PROMENLJIVIH
PROMENLJIVE, TIPOVI PROMENLJIVIH Šta je promenljiva? To je objekat jezika koji ima ime i kome se mogu dodeljivati vrednosti. Svakoj promenljivoj se dodeljuje registar (memorijska lokacija) operativne memorije
ВишеFunkcije predavač: Nadežda Jakšić
Funkcije predavač: Nadežda Jakšić funkcije delovi programa koji izvršavaju neki zadatak, celinu; dele na ugrađene, korisničke i main funkciju ugrađene funkcije printf,scanf... da bi se one izvršile potrebno
ВишеMicrosoft Word - Lekcija 11.doc
Лекција : Креирање графова Mathcad олакшава креирање x-y графика. Треба само кликнути на нови фајл, откуцати израз који зависи од једне варијабле, например, sin(x), а онда кликнути на дугме X-Y Plot на
ВишеTutoring System for Distance Learning of Java Programming Language
Deklaracija promenljivih Inicijalizacija promenljivih Deklaracija promenljive obuhvata: dodelu simboličkog imena promenljivoj i određivanje tipa promenljive (tip određuje koja će vrsta memorijskog registra
ВишеPROGRAMIRANJE Program je niz naredbi razumljivih računalu koje rješavaju neki problem. Algoritam je postupak raščlanjivanja problema na jednostavnije
PROGRAMIRANJE Program je niz naredbi razumljivih računalu koje rješavaju neki problem. Algoritam je postupak raščlanjivanja problema na jednostavnije korake. Uz dobro razrađen algoritam neku radnju ćemo
ВишеПрограмирај!
Листе Поред појединачних вредности исказаних бројем или ниском карактера, често је потребно забележити већи скуп вредности које су на неки начин повезане, као, на пример, имена у списку путника у неком
ВишеTutoring System for Distance Learning of Java Programming Language
Niz (array) Nizovi Niz je lista elemenata istog tipa sa zajedničkim imenom. Redosled elemenata u nizovnoj strukturi je bitan. Konkretnom elementu niza pristupa se preko zajedničkog imena niza i konkretne
ВишеMicrosoft PowerPoint - Programski_Jezik_C_Organizacija_Izvornog_Programa_I_Greske [Compatibility Mode]
Programski jezik C organizacija izvornog programa Prevođenje Pisanje programa izvorni program Prevođenje programa izvršni program Izvršavanje programa rezultat Faze prevođenja Pretprocesiranje Kompilacija
ВишеProgramiranje u C-u ili C++-u Pseudo-slučajni brojevi; Dinamička alokacija memorije 1 ZADACI SA ČASA Zadatak 1 Napraviti funkciju koja generišlučajan
Programiranje u C-u ili C++-u Pseudo-slučajni brojevi; Dinamička alokacija memorije 1 ZADACI SA ČASA Zadatak 1 Napraviti funkciju koja generišlučajan realan broj od 0 i 1. Na standardni izlaz ispisati
ВишеSlide 1
OSNOVNI POJMOVI Naredba je uputa računalu za obavljanje određene radnje. Program je niz naredbi razumljivih računalu koje rješavaju neki problem. Pisanje programa zovemo programiranje. Programski jezik
ВишеP11.3 Analiza zivotnog veka, Graf smetnji
Поједностављени поглед на задњи део компајлера Међурепрезентација (Међујезик IR) Избор инструкција Додела ресурса Распоређивање инструкција Инструкције циљне архитектуре 1 Поједностављени поглед на задњи
ВишеAKVIZICIJA PODATAKA SA UREĐAJEM NI USB-6008 NI USB-6008 je jednostavni višenamjenski uređaj koji se koristi za akviziciju podataka (preko USBa), kao i
AKVIZICIJA PODATAKA SA UREĐAJEM NI USB-6008 NI USB-6008 je jednostavni višenamjenski uređaj koji se koristi za akviziciju podataka (preko USBa), kao i za generisanje željenih izlaznih signala (slika 1).
ВишеUvod u računarstvo 2+2
Ulaz i izlaz podataka Ulaz i izlaz podataka Nakon odslušanog bit ćete u stanju: navesti sintaksu naredbi za unos/ispis znakova znakovnih nizova cijelih brojeva realnih brojeva jednostruke i dvostruke preciznosti
ВишеGrananje u programu predavač: Nadežda Jakšić
Grananje u programu predavač: Nadežda Jakšić u okviru linijske strukture izvršavaju se sve naredbe u okviru razgranate strukture uvek se ispituje neki uslov; u zavisnosti od toga da li je uslov ispunjen
ВишеSlide 1
predmet Inženjerska informatika Operativni sistem dr Anica Milošević Koji operativni sistemi postoje? Microsoft Windows Linux Suse Red Hat Ubuntu Unix 26.1.2018. 2 Šta je Windows operativni sistem? Operativni
ВишеUniverzitet u Novom Sadu Tehnički fakultet Mihajlo Pupin Zrenjanin Seminarski rad Predmet: Konkuretno programiranje doc. dr Dejan Lacmanovic Zorica Br
Univerzitet u Novom Sadu Tehnički fakultet Mihajlo Pupin Zrenjanin Seminarski rad Predmet: Konkuretno programiranje doc. dr Dejan Lacmanovic Zorica Brkić SI 29/15 Zrenjanin 2018. Softversko inženjerstvo
ВишеУпутство за пријављивање испита путем интернета Да би студент могао да пријави испит путем интернета мора прво да се пријави. Пријављивање се врши у п
Упутство за пријављивање испита путем интернета Да би студент могао да пријави испит путем интернета мора прво да се пријави. Пријављивање се врши у посебном дијалог-прозору до кога се долази линком есервис
ВишеMicrosoft PowerPoint - 13-Funkcije_2.ppt [Compatibility Mode]
Osnove programiranja Funkcije - Metode Prenos parametara Po vrednosti Po referenci Po izlazu Sadržaj Opseg važenja promenljive u drugim strukturama Rekurzije Prenos parametara Metoda može vratiti isključivo
ВишеRazvoj programa, Code::Blocks, struktura programa, printf, scanf, konverzioni karakteri predavač: Nadežda Jakšić
Razvoj programa, Code::Blocks, struktura programa, printf, scanf, konverzioni karakteri predavač: Nadežda Jakšić projektni zadatak projektovanje programa (algoritmi) pisanje programskog koda, izvorni kod,
ВишеPowerPoint Presentation
Python tutorijal - praktični primeri - Sadržaj: 1. Upoznavanje sa razvojnim okruženjem - Python proširenje (PTVS) za Visual Studio 2015 - Druga razvojna okruženja 2. Osnovi Python jezika - Sintaksa i konvencije
ВишеPRIRODNO MATEMATIČKI FAKULTET U NIŠU DEPARTMAN ZA RAČUNARSKE NAUKE Utorak, godine PRIJEMNI ISPIT IZ INFORMATIKE 1. Koja od navedenih ekste
PRIRODNO MATEMATIČKI FAKULTET U NIŠU DEPARTMAN ZA RAČUNARSKE NAUKE Utorak, 5.06.019. godine PRIJEMNI ISPIT IZ INFORMATIKE 1. Koja od navedenih ekstenzija se najčešće koristi za tekstualne datoteke? a)
Више1
Podsetnik: Statističke relacije Matematičko očekivanje (srednja vrednost): E X x p x p x p - Diskretna sl promenljiva 1 1 k k xf ( x) dx E X - Kontinualna sl promenljiva Varijansa: Var X X E X E X 1 N
ВишеMicrosoft Word - 11 Pokazivaci
Pokazivači U dosadašnjem radu smo imali prilike da koristimo promenljive koje smo deklarisali na početku nekog bloka. Prilikom deklaracije promenljiva dobija jedinstveni naziv i odgovarajući prostor u
ВишеProgramiranje 2 0. predavanje Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog2 2019, 0. predavanje p. 1/4
Programiranje 2 0. predavanje Saša Singer singer@math.hr web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog2 2019, 0. predavanje p. 1/48 Sadržaj predavanja Ponavljanje onog dijela C-a koji
ВишеОрт колоквијум
II колоквијум из Основа рачунарске технике I - 27/28 (.6.28.) Р е ш е њ е Задатак На улазе x, x 2, x 3, x 4 комбинационе мреже, са излазом z, долази четворобитни BCD број. Ако број са улаза при дељењу
ВишеLaboratorija za termičku obradu Inženjerstvo površina Kratko uputstvo za obradu i analizu profila u programskom paketu SPIP Programski paket SPIP preu
Kratko uputstvo za obradu i analizu profila u programskom paketu SPIP Programski paket SPIP preuzmite sa sledećeg linka https://www.imagemet.com/products/spip/download/downloadspip/. Instalirajte softver,
ВишеNIZOVI
NIZOVI II gimnazije NIZOVI su složeni tip podatka u koji se može smjestiti više varijabli(podataka) JEDNODIMENZIONALNI DVODIMENZIONALNI VIŠEDIMENZIONALNI Milenko Soldat 2 JEDNODIMENZIONALNI NIZOVI Sintaksa:
ВишеAlgoritmi i arhitekture DSP I
Univerzitet u Novom Sadu Fakultet Tehničkih Nauka Katedra za računarsku tehniku i međuračunarske komunikacije Algoritmi i arhitekture DSP I INTERNA ORGANIACIJA DIGITALNOG PROCESORA A OBRADU SIGNALA INTERNA
Више070-ALIP2-udzbenik.indb
0. U uvodnom ćemo poglavlju ponoviti osnove programskog jezika C s kojima smo se susreli u. razredu. U kratkom pregledu navedeni su operatori (aritmetički, relacijski i logički), neke od funkcija iz biblioteka
ВишеUpitni jezik SQL
Šta je SQL? SQL (Structured Query Language) je jezik koji je Američki Institut za Nacionalne Standarde (ANSI - American National Standards Institute) prihvatio kao standardni jezik za relacione baze podataka.
ВишеTutoring System for Distance Learning of Java Programming Language
Obeležene petlje Obeležene petlje Obeležavanje petlje nekim identifikatorom omogućava da se programski tok usmeri na mesto u programu specificirano tim identifikatorom. Ako se iza naredbi break ili continue
ВишеPHP kod
PHP kod Fajl test.txt kreiran u Notepad-u Ugrađene funkcije u php-u fopen() otvara datoteku fclose() zatvara datoteku Primjer pokazuje kako se može najprije otvariti datoteka "test.txt" za čitanje, zatim
ВишеProgramski jezici i strukture podataka 2018/2019. Programski jezici i strukture podataka Računarske vežbe vežba 10 Zimski semestar 2018/2019. Studijsk
Programski jezici i strukture podataka Računarske vežbe vežba 10 Zimski semestar 2018/2019. Studijski program: Informacioni inženjering Informacioni inženjering 1 Rekurzivne funkcije Binarna stabla Informacioni
ВишеNo Slide Title
Statistika je skup metoda za uređivanje, analiziranje i grafičko prikazivanje podataka. statistika???? Podatak je kvantitativna ili kvalitativna vrijednost kojom je opisano određeno obilježje (svojstvo)
ВишеMicrosoft PowerPoint - OOPpredavanja05 [Compatibility Mode]
OBJEKTNO ORIJENTISANO PROGRAMIRANJE PREDAVANJE 5 OBJEKTI U INTERAKCIJI Miloš Kovačević Đorđe Nedeljković 1 /25 OSNOVNI KONCEPTI - Abstrakcija - Modularizacija - Objektne reference - Klasni dijagram - Objektni
ВишеMicrosoft Word - MySQL_3.doc
7. Data Manipulation Language (DML) Jezik za rad sa podacima (Data Manipulation Language (DML)) služi za umetanje, brisanje i ažuriranje podataka u bazi. 7.1. Umetanje novih redova u tabelu INSERT sintaksa
ВишеMicrosoft Word - 1.Operacije i zakoni operacija
1. Operacije i zakoni operacija Neka je S neprazan skup. Operacija dužine n skupa S jeste svako preslikavanje : n n f S S ( S = S S S... S) Ako je n = 1, onda operaciju nazivamo unarna. ( f : S S ) Ako
ВишеI колоквијум из Основа рачунарске технике I СИ- 2017/2018 ( ) Р е ш е њ е Задатак 1 Тачка А Потребно је прво пронаћи вредности функција f(x
I колоквијум из Основа рачунарске технике I СИ- / (...) Р е ш е њ е Задатак Тачка А Потребно је прво пронаћи вредности функција f(x, x, x ) и g(x, x, x ) на свим векторима. f(x, x, x ) = x x + x x + x
ВишеOsnovi programiranja Beleške sa vežbi Smer Računarstvo i informatika Matematički fakultet, Beograd Jelena Tomašević i Sana Stojanović November 7, 2005
Osnovi programiranja Beleške sa vežbi Smer Računarstvo i informatika Matematički fakultet, Beograd Jelena Tomašević i Sana Stojanović November 7, 2005 2 Sadržaj 1 5 1.1 Specifikacija sintakse programskih
Више4. Веза између табела практичан рад 1. Повежите табеле Proizvodi и Proizvođači у бази података Prodavnica.accdb везом типа 1:N. 2. Креирајте табелу St
4. Веза између табела практичан рад 1. Повежите табеле Proizvodi и Proizvođači у бази података Prodavnica.accdb везом типа 1:N. 2. Креирајте табелу Stavke_računa која ће разрешити проблем везе типа N:N
ВишеМ А Т Е М А Т И К А Први разред (180) Предмети у простору и односи међу њима (10; 4 + 6) Линија и област (14; 5 + 9) Класификација предмета према свој
М А Т Е М А Т И К А Први разред (180) Предмети у простору и односи међу њима (10; 4 + 6) Линија и област (14; 5 + 9) Класификација предмета према својствима (6; 2 + 4) Природни бројеви до 100 (144; 57
ВишеMicrosoft PowerPoint - 10-Jednodimenzionalni nizovi.ppt [Compatibility Mode]
Osnove programiranja Nizovi Sadržaj Definicija niza Vrste i elementi nizova Deklarisanje nizova Dodele (početne) vrednosti nizovima Jednodimenzionalni nizovi Primeri dodele vrednosti Petlja foreach Nizovi
ВишеAster
ASTER V7 Multi-user Extension za Microsoft Windows 7 Vodič za brzi početak Instalirajte ASTER V7 softver koristeći instalaciju dobavljača. Od ostalih instalacionih opcija preporučujemo da svako posebno
ВишеПисање и превођење модула
Писање и превођење модула ЦИЉ Научити како се пишу и преводе модули. ИСХОД Након ове вежбе ћете моћи да: Напишете кернел модул са неколико могућности, укључујући параметре Приступите кернелу из вашег модула
ВишеVEŽBA 5: KLASE I OBJEKTI U C# Cilj ove vežbe je upoznavanje sa osnovama rada sa klasama i objektima u programskom jeziku C#. Pored toga, bide demonstr
VEŽBA 5: KLASE I OBJEKTI U C# Cilj ove vežbe je upoznavanje sa osnovama rada sa klasama i objektima u programskom jeziku C#. Pored toga, bide demonstrirana upotreba konstruktora, svojstava, metoda klase,
ВишеTest ispravio: (1) (2) Ukupan broj bodova: 21. veljače od 13:00 do 14:00 Županijsko natjecanje / Osnove informatike Osnovne škole Ime i prezime
Test ispravio: () () Ukupan broj bodova:. veljače 04. od 3:00 do 4:00 Ime i prezime Razred Škola Županija Mentor Sadržaj Upute za natjecatelje... Zadaci... Upute za natjecatelje Vrijeme pisanja: 60 minuta
ВишеP1.3 Projektovanje makroasemblera
ПРОЈЕКТОВАЊЕ МАКРОАСЕМБЛЕРА Макроасемблер Потребна проширења асемблера 1 МАКРОАСЕМБЛЕР Макроасемблер преводи полазни програм написан на макроасемблерском језику у извршиви машински програм. Приликом израде
ВишеMicrosoft Word - SIORT1_2019_K1_resenje.docx
I колоквијум из Основа рачунарске технике I СИ- 208/209 (24.03.209.) Р е ш е њ е Задатак f(x, x 2, x 3 ) = (x + x x ) x (x x 2 + x ) + x x 2 x 3 f(x, x 2, x 3 ) = (x + x x ) (x x + (x )) 2 + x + x x 2
ВишеУПУТСТВО ЗА КОРИСНИКА Приступ локацији часописа Српски архив за целокупно лекарство добија се преко internet adrese: Након
УПУТСТВО ЗА КОРИСНИКА Приступ локацији часописа Српски архив за целокупно лекарство добија се преко internet adrese: http://www.srpskiarhiv.rs/ Након тога се на екрану појављује форма за пријаву на часопис
Више3.Kontrlne (upravlja~ke) strukture u Javi
Објектно орјентисано програмирање Владимир Филиповић vladaf@matf.bg.ac.rs Александар Картељ kartelj@matf.bg.ac.rs Низови у програмском језику Јава Владимир Филиповић vladaf@matf.bg.ac.rs Александар Картељ
ВишеMicrosoft Word - CAD sistemi
U opštem slučaju, se mogu podeliti na 2D i 3D. 2D Prvo pojavljivanje 2D CAD sistema se dogodilo pre više od 30 godina. Do tada su inženjeri koristili table za crtanje (kulman), a zajednički jezik komuniciranja
ВишеTeorija skupova - blog.sake.ba
Uvod Matematika je jedan od najomraženijih predmeta kod većine učenika S pravom, dakako! Zapitajmo se šta je uzrok tome? Da li je matematika zaista toliko teška, komplikovana? Odgovor je jednostavan, naravno
ВишеProgramiranje 2 popravni kolokvij, 15. lipnja Ime i prezime: JMBAG: Upute: Na kolokviju je dozvoljeno koristiti samo pribor za pisanje i brisanj
Upute: Na kolokviju je dozvoljeno koristiti samo pribor za pisanje i brisanje, te službeni šalabahter. Kalkulatori, mobiteli, razne neslužbene tablice, papiri i sl., nisu dozvoljeni! Sva rješenja napišite
ВишеCelobrojno programiranje Rešavamo sledeći poblem celobrojnog programiranja: min c T x Ax = b x 0 x Z n Gde pretpostavljamo da je A celobrojna matrica
Celobrojno programiranje Rešavamo sledeći poblem celobrojnog programiranja: min c T x Ax = b x 0 x Z n Gde pretpostavljamo da je A celobrojna matrica dimenzije m n, b Z m, c Z n. Takođe, očekuje se da
ВишеLekcija 6 Prikaz podataka na graficima. Upis u fajl. 1. Cilj vežbe Cilj vežbe je da studente upozna sa: načinima prikaza podataka na različitim grafič
Lekcija 6 Prikaz podataka na graficima. Upis u fajl. 1. Cilj vežbe Cilj vežbe je da studente upozna sa: načinima prikaza podataka na različitim grafičkim indikatorima načinima kreiranja različitih tipova
ВишеРЕПУБЛИКА СРПСКА МИНИСТАРСТВО ПРОСВЈЕТЕ И КУЛТУРЕ РЕПУБЛИЧКИ ПЕДАГОШКИ ЗАВОД Милоша Обилића 39 Бањалука, Тел/факс 051/ , 051/ ; p
РЕПУБЛИКА СРПСКА МИНИСТАРСТВО ПРОСВЈЕТЕ И КУЛТУРЕ РЕПУБЛИЧКИ ПЕДАГОШКИ ЗАВОД Милоша Обилића 9 Бањалука, Тел/факс 01/40-110, 01/40-100; e-mail : pedagoski.zavod@rpz-rs.org Датум: 8.04.018. Републичко такмичење
Више6-8. ČAS Celobrojno programiranje Rešavamo sledeći poblem celobrojnog programiranja: Gde pretpostavljamo da je A celobrojna matrica dimenzije,. Takođe
6-8. ČAS Celobrojno programiranje Rešavamo sledeći poblem celobrojnog programiranja: Gde pretpostavljamo da je A celobrojna matrica dimenzije,. Takođe, očekuje se da su koordinate celobrojne. U slučaju
ВишеP9.1 Dodela resursa, Bojenje grafa
Фаза доделе ресурса Ова фаза се у литератури назива и фазом доделе регистара, при чему се под регистрима подразумева скуп ресурса истог типа. Додела регистара променљивама из графа сметњи се обавља тзв.
ВишеUniverzitet u Beogradu Mašinski fakultet Konstrukcija i tehnologija proizvodnje letelica PODEŠAVANJE PROGRAMSKOG PAKETA CATIA V5 Miloš D. Petrašinović
Univerzitet u Beogradu Mašinski fakultet Konstrukcija i tehnologija proizvodnje letelica PODEŠAVANJE PROGRAMSKOG PAKETA CATIA V5 Miloš D. Petrašinović Beograd, 2019 Sadržaj Sadržaj i 1 Uvod u programski
ВишеОрт колоквијум
Испит из Основа рачунарске технике - / (6.6.. Р е ш е њ е Задатак Комбинациона мрежа има пет улаза, по два за број освојених сетова тенисера и један сигнал који одлучује ко је бољи уколико је резултат
ВишеMicrosoft Word - Uputstvo za koristenje aplikacije GIPKO
Aplikacija za elektronsko popunjavanje obrasca GIP-1022 i spašavanje podataka u datoteku u XML formatu GIPKO Verzija 1.2 Sadržaj Uvod... 3 Instalacija aplikacije... 4 Pokretanje aplikacije... 7 Meni aplikacije...
ВишеStrukture predavač: Nadežda Jakšić
Strukture predavač: Nadežda Jakšić složeni tip podatka; kolekcija promenljivih različitog tipa koje su sakupljene radi lakše manipulacije sintaksa: struct [oznakastrukture] navede { definicija člana strukture;
ВишеNAPOMENA: Studenti na ispit donose kod urađenog zadatka
Пројекат из предмета Интернет програмирање за августовски и септембарски испитни рок школске 2018/19. године Коришћењем PHP технологије, технологије AJAX и MySQL базе података, реализовати следећу веб
ВишеMicrosoft PowerPoint - C-4-1
Pregled iskaza u C-u Izraz; Iskaz dodele, serijski komponovani iskaz; blok Uslovni iskazi i izrazi; složeno grananje Iterativni iskazi Iskaz dodele Promena vrednosti a = Ψ; Izračunava vrednost izraza Ψ,
ВишеUvod u takmičarsko programiranje
8. čas Uvod u programiranje - naredbe ciklusa Uvežbavamo naredbe ciklusa, naredbe ponavljanja (loop) https://studio.code.org/s/course2/stage/6/puzzle/3 "Talk is cheap. Show me the code." - Linus Torvalds
ВишеMicrosoft Word - 02 Elementi programskog jezika Pascal
Elementi programskog jezika Pascal Osnovni elementi jezika Osnovni simboli U programskom jeziku Pascal sve konstrukcije se grade od skupa osnovnih simbola jezika koji čine slova, cifre i specijalni znaci.
ВишеProgramiranje II Beleške sa vežbi Smer Informatika Matematički fakultet, Beograd Sana Stojanović 1
Programiranje II Beleške sa vežbi Smer Informatika Matematički fakultet, Beograd Sana Stojanović 1 Sadržaj 1 Pokazivači - ponavljanje 3 2 Pokazivači - veza sa nizovima 5 2 1 Pokazivači - ponavljanje 1.
ВишеMicrosoft PowerPoint - 6. CMS [Compatibility Mode]
Visoka škola strukovnih studija za informacione i komunikacione tehnologije Beograd WEB TEHNOLOGIJE Drupal CMS(Content Managment System) Školska 2012/13. Marko M. Spasojević, spec. inž. Dr Nenad Kojić,
ВишеMicrosoft Word - Zadaci za samostalno vjezbanje 4.doc
Zadaci za samostalno vježbanje 4. Svi zadaci dati ovdje su takvi da se mogu uraditi korištenjem isključivo gradiva prva četiri predavanja i ranije stečenog predznanja na predmetu Osnove računarstva. Zvjezdicom
Више1, 2, 3, кодирај! Активности циклуса 4 Пројект «Аркадне игре» - Час 6: Програмирање падања новчића (наставак) Доминантна дисциплина Математикa Резиме
1, 2, 3, кодирај! Активности циклуса 4 Пројект «Аркадне игре» - Час 6: Програмирање падања новчића (наставак) Доминантна дисциплина Математикa Резиме Програмирање добијања награда омогућује ученицима да
ВишеUPUTA za uvođenje JOPPD - prva faza
UPUTA ZA UVOĐENJE OBRASCA JOPPD PRVA FAZA Prva faza uvođenja obrasca JOPPD uključuje slijedeće aktivnosti: 1. Instalacija nove verzije 2. Punjenje šifarnika potrebnih za JOPPD obrazac a. Oznake stjecatelja
ВишеPojačavači
Programiranje u fizici Prirodno-matematički fakultet u Nišu Departman za fiziku dr Dejan S. Aleksić Programiranje u fizici dr Dejan S. Aleksić, vanredni profesor Kabinet 307 (treći sprat), lab. za elektroniku
ВишеЛИНЕАРНА ФУНКЦИЈА ЛИНЕАРНА ФУНКЦИЈА у = kх + n А утврди 1. Које од наведених функција су линеарне: а) у = 2х; б) у = 4х; в) у = 2х 7; г) у = 2 5 x; д)
ЛИНЕАРНА ФУНКЦИЈА ЛИНЕАРНА ФУНКЦИЈА у = kх + n А утврди 1. Које од наведених функција су линеарне: а) у = х; б) у = 4х; в) у = х 7; г) у = 5 x; д) у = 5x ; ђ) у = х + х; е) у = x + 5; ж) у = 5 x ; з) у
ВишеMicrosoft Word - KORISNIČKA UPUTA za pripremu računala za rad s Fina potpisnim modulom_RSV_ doc
Uputa za pripremu računala za rad s Fininim potpisnim modulom Zagreb, lipanj 2019. Sadržaj: 1. UVOD... 3 2. POJMOVI I SKRAĆENICE... 3 3. TEHNIČKI PREDUVJETI KORIŠTENJA... 3 4. PODEŠAVANJE INTERNET PREGLEDNIKA
ВишеMy_P_Red_Bin_Zbir_Free
БИНОМНА ФОРМУЛА Шт треба знати пре почетка решавања задатака? I Треба знати биному формулу која даје одговор на питање чему је једнак развој једног бинома када га степенујемо са бројем 0 ( ) или ( ) 0!,
ВишеSEMINAR
1. Cilj vežbe Lekcija 9 Akvizicija i osnovna obrada slike u LabVIEW Cilj vežbe je da studente upozna sa: Akvizicijom slike. Osnovnim koracima pri obradi slike Zadatak 9.1. Povezati USB kameru i kreirati
Више23. siječnja od 13:00 do 14:00 Školsko natjecanje / Osnove informatike Srednje škole RJEŠENJA ZADATAKA S OBJAŠNJENJIMA Sponzori Medijski pokrovi
3. siječnja 0. od 3:00 do 4:00 RJEŠENJA ZADATAKA S OBJAŠNJENJIMA Sponzori Medijski pokrovitelji Sadržaj Zadaci. 4.... Zadaci 5. 0.... 3 od 8 Zadaci. 4. U sljedećim pitanjima na pitanja odgovaraš upisivanjem
ВишеInženjering informacionih sistema
Fakultet tehničkih nauka, Novi Sad Inženjering informacionih sistema Dr Ivan Luković Dr Slavica Kordić Nikola Obrenović Milanka Bjelica Dr Jelena Borocki Dr Milan Delić UML UML (Unified Modeling Language)
ВишеPowerPoint Presentation
Tehnička škola 9. maj Bačka Palanka Programiranje III razred Tok izvršavanja programa Tok izvršavanja programa Dosadašnji kod se izvršavao praktično linearno. Nije postojala nikakva uslovna ili brojačka
ВишеLAB PRAKTIKUM OR1 _ETR_
UNIVERZITET CRNE GORE ELEKTROTEHNIČKI FAKULTET STUDIJSKI PROGRAM: ELEKTRONIKA, TELEKOMUNIKACIJE I RAČUNARI PREDMET: OSNOVE RAČUNARSTVA 1 FOND ČASOVA: 2+1+1 LABORATORIJSKA VJEŽBA BROJ 1 NAZIV: REALIZACIJA
ВишеPrimenjeno programiranje - vezbe GUI i baze podataka
Primenjeno programiranje - Vežbe Java i NetBeans IDE 6.5 Kreiranje korisničkog interfejsa Primer jednostavne aplikacije: 1. Odabrati opciju File > New Project 2. Meñu kategorijama odabrati Java i podkategoriju
ВишеRačunarski praktikum I - Vježbe 01 - Uvod
Prirodoslovno-matematički fakultet Matematički odsjek Sveučilište u Zagrebu RAČUNARSKI PRAKTIKUM I Vježbe 01 - Uvod v2018/2019. Sastavio: Zvonimir Bujanović Gradivo i način polaganja Gradivo: osnove jezika
ВишеINTEGRIRANI KNJIŽNIČNI SUSTAV Sustav za podršku Upute za instalaciju: Aleph v22 ZAG
INTEGRIRANI KNJIŽNIČNI SUSTAV Sustav za podršku Upute za instalaciju: Aleph v22 ZAG INTEGIRANI KNJIŽNIČNI SUSTAV Upute za instalaciju: Aleph v22 ZAG Nacionalna i sveučilišna knjižnica u Zagrebu Ul. Hrvatske
ВишеDomaći zadatak - GUI (rok za sve grupe je ) Napraviti repozitorijum na GitHub-u koji se zove MenjacnicaGUI i postaviti Eclipse projekat menj
Domaći zadatak - GUI (rok za sve grupe je 10.5.2017.) Napraviti repozitorijum na GitHub-u koji se zove MenjacnicaGUI i postaviti Eclipse projekat menjacnicagui koji je povezan sa ovim repozitorijumom.
ВишеЗАДАЦИ ИЗ МАТЕМАТИКЕ ЗА ПРИПРЕМАЊЕ ЗАВРШНОГ ИСПИТА
ЗАДАЦИ ИЗ МАТЕМАТИКЕ ЗА ПРИПРЕМАЊЕ ЗАВРШНОГ ИСПИТА p m m m Дат је полином ) Oдредити параметар m тако да полином p буде дељив са б) Одредити параметар m тако да остатак при дељењу p са буде једнак 7 а)
ВишеРачунарска интелигенција
Рачунарска интелигенција Генетско програмирање Александар Картељ kartelj@matf.bg.ac.rs Ови слајдови представљају прилагођење слајдова: A.E. Eiben, J.E. Smith, Introduction to Evolutionary computing: Genetic
ВишеMy_ST_FTNIspiti_Free
ИСПИТНИ ЗАДАЦИ СУ ГРУПИСАНИ ПО ТЕМАМА: ЛИМЕСИ ИЗВОДИ ФУНКЦИЈЕ ЈЕДНЕ ПРОМЕНЉИВЕ ИСПИТИВАЊЕ ТОКА ФУНКЦИЈЕ ЕКСТРЕМИ ФУНКЦИЈЕ СА ВИШЕ ПРОМЕНЉИВИХ 5 ИНТЕГРАЛИ ДОДАТАК ФТН Испити С т р а н а Лимеси Одредити
ВишеSKRIPTE EKOF 2019/20 skripteekof.com Lekcija 1: Brojevni izrazi Lekcija 1: Brojevni izrazi Pregled lekcije U okviru ove lekcije imaćete priliku da nau
Lekcija : Brojevni izrazi Pregled lekcije U okviru ove lekcije imaćete priliku da naučite sledeće: osnovni pojmovi o razlomcima proširivanje, skraćivanje, upoređivanje; zapis razlomka u okviru mešovitog
ВишеUvod u PHP
Uvod u PHP Marijan Šuflaj FER, 2018 Sadržaj PHP Općenito Sintaksa Osnove Kontrola toka Zadatci Resursi Općenito Naziv od PHP Hypertext Preprocessor Obično koristi ekstenziju.php Tipovi su dinamički Trenutno
ВишеČesto postavljana pitanja u programu OBRT 1. Kako napraviti uplatu u knjizi tražbina i obveza? 2. Kako odabrati mapu/disk za pohranu podataka? 3. Kako
Često postavljana pitanja u programu OBRT 1. Kako napraviti uplatu u knjizi tražbina i obveza? 2. Kako odabrati mapu/disk za pohranu podataka? 3. Kako instalirati (novi) finin certifikat? 4. Kako ispisati
ВишеОрт колоквијум
I колоквијум из Основа рачунарске технике I - надокнада СИ - 008/009 (10.05.009.) Р е ш е њ е Задатак 1 a) Пошто постоје вектори на којима се функција f не јавља и вектори на којима има вредност један,
ВишеQFD METODA – PRIMER
QFD METODA - PRIMER PROBLEM: U kompaniji X koja se bavi izradom kompjuterskih softvera uočen je pad prodaje konkretnog softvera - Softver za vođenje knjigovodstva. Kompanija X je raspolagala sa jednom
ВишеLogičke izjave i logičke funkcije
Logičke izjave i logičke funkcije Građa računala, prijenos podataka u računalu Što su logičke izjave? Logička izjava je tvrdnja koja može biti istinita (True) ili lažna (False). Ako je u logičkoj izjavi
ВишеKombinatorno testiranje
Kombinatorno testiranje Uvod Na ponašanje aplikacije utiče puno faktora, npr. ulazne vrednosti, konfiguracije okruženja. Tehnike kao što je podela na klase ekvivalencije ili analiza graničnih vrednosti
ВишеMy_P_Trigo_Zbir_Free
Штa треба знати пре почетка решавања задатака? ТРИГОНОМЕТРИЈА Ниво - Основне формуле које произилазе из дефиниција тригонометријских функција Тригонометријске функције се дефинишу у правоуглом троуглу
ВишеMathcad - MCADMod MCD
Mathcad Modul # 2 Operatori i funkcije Relacioni i logicki operatori - (funkcija if) Korisnicki definisane funkcije Globalne promenljive 1) Operatori i funkcije: U Mathcadu se razlikuju operatori i funkcije,
ВишеСТАРТ - СТОП ПАРКИНГ СИСТЕМ КОРИСНИЧКО УПУТСТВО страна 1 од 12
СТАРТ - СТОП ПАРКИНГ СИСТЕМ КОРИСНИЧКО УПУТСТВО страна 1 од 12 РЕГИСТРАЦИЈА НА СТАРТ-СТОП ПАРКИНГ СИСТЕМ За коришћење СТАРТ-СТОП ПАРКИНГ система, корисник (физичко или правно лице) попуњава упитник у просторијама
ВишеSmjernice za korištenje sustava online prijava Ukoliko imate pristupno korisničko ime i lozinku ili ste navedeno dobili nakon zahtjeva za otvaranje no
Smjernice za korištenje sustava online prijava Ukoliko imate pristupno korisničko ime i lozinku ili ste navedeno dobili nakon zahtjeva za otvaranje novog korisničkog računa (poslati zahtjev na javnipoziv.opp@havc.hr
ВишеТехничко решење: Метода мерења ефективне вредности сложенопериодичног сигнала Руководилац пројекта: Владимир Вујичић Одговорно лице: Владимир Вујичић
Техничко решење: Метода мерења ефективне вредности сложенопериодичног сигнала Руководилац пројекта: Владимир Вујичић Одговорно лице: Владимир Вујичић Аутори: Драган Пејић, Бојан Вујичић, Небојша Пјевалица,
Више