PowerPointova prezentacija

Слични документи
Slide 1

PROGRAMIRANJE Program je niz naredbi razumljivih računalu koje rješavaju neki problem. Algoritam je postupak raščlanjivanja problema na jednostavnije

PowerPoint Presentation

Funkcije predavač: Nadežda Jakšić

Fortran

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

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

Grananje u programu predavač: Nadežda Jakšić

CIJELI BROJEVI 1.) Kako još nazivamo pozitivne cijele brojeve? 1.) Za što je oznaka? 2.) Ispiši skup prirodnih brojeva! 3.) Kako označavamo skup priro

070-ALIP2-udzbenik.indb

Državna matura iz informatike

PASCAL UVOD 2 II razred gimnazije

PROMENLJIVE, TIPOVI PROMENLJIVIH

Tutoring System for Distance Learning of Java Programming Language

Funkcije predavač: Nadežda Jakšić

PowerPoint Presentation

Državno natjecanje / Osnove informatike Srednje škole Zadaci U sljedećim pitanjima na odgovore odgovaraš upisivanjem slova koji se nalazi ispred

Razvoj programa, Code::Blocks, struktura programa, printf, scanf, konverzioni karakteri predavač: Nadežda Jakšić

(Printing Maxima - Vje\236be 10.wxmx)

23. siječnja od 13:00 do 14:00 Školsko natjecanje / Osnove informatike Srednje škole RJEŠENJA ZADATAKA S OBJAŠNJENJIMA Sponzori Medijski pokrovi

Microsoft Word - 6. RAZRED INFORMATIKA.doc

Programski jezik QBasic Kriteriji ocjenjivanja programiranje(b) - QBasic razred 42

Programski jezik QBasic Kriteriji ocjenjivanja programiranje(b) - QBasic razred 42

MATEMATIKA IZVEDBENI GODIŠNJI NASTAVNI PLAN I PROGRAM MATEMATIKE OSNOVNA ŠKOLA, 2. razred šk. god Planirala: Višnja Špicar, učitelj RN

Tutoring System for Distance Learning of Java Programming Language

Uvod u računarstvo 2+2

Logičke izjave i logičke funkcije

KATUŠIĆ ANTONIO.pdf

1.1. Programiranje i programski jezici Uvod -pojmovi programa i programiranja prisutni su danas na svakom koraku, pogotovo u masovnim medijima

Programiranje 1

Elementi praćenja i ocjenjivanja za nastavni predmet Matematika u 4. razredu Elementi praćenja i ocjenjivanja za nastavni predmet Matematika u 4. razr

PRIRODNO MATEMATIČKI FAKULTET U NIŠU DEPARTMAN ZA RAČUNARSKE NAUKE Utorak, godine PRIJEMNI ISPIT IZ INFORMATIKE 1. Koja od navedenih ekste

Microsoft Word - 6ms001

1. OPĆE INFORMACIJE 1.1. Naziv kolegija Programiranje 1.6. Semestar Nositelj kolegija dr.sc. Bruno Trstenjak, v. pred Bodovna vrijednost

s2.dvi

PowerPoint Presentation

Programiranje 1 5. predavanje dodatak Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog1 2018, 5. predavanj

Microsoft PowerPoint - Programski_Jezik_C_Organizacija_Izvornog_Programa_I_Greske [Compatibility Mode]

Algoritmi SŠ P1

Jednadžbe - ponavljanje

Č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

Str. 0 Programiranje Priručnik Programiranje Zagreb, godina Ovo je djelo dano na korištenje pod licencom Creative Commons Imenovanje-Nekomercija

KORISNIČKE UPUTE APLIKACIJA ZA POTPIS DATOTEKA

Programiranje 1 drugi kolokvij, 2. veljače Ime i prezime: JMBAG: Upute: Na kolokviju je dozvoljeno koristiti samo pribor za pisanje i brisanje,

Programiranje 1 Beleške sa vežbi Školska 2007/2008 godina Matematički fakultet, Beograd Jelena Tomašević December 5, 2007

Школа Ј. Ј. Змај Свилајнац МЕСЕЧНИ ПЛАН РАДА ЗА СЕПТЕМБАР Школска 2018 /2019. Назив предмета: Информатика и рачунарство Разред: 5. Недељни број часова

Programiranje 2 popravni kolokvij, 15. lipnja Ime i prezime: JMBAG: Upute: Na kolokviju je dozvoljeno koristiti samo pribor za pisanje i brisanj

Konverzije, operatori, matematičke funkcije predavač: Nadežda Jakšić

PROCES KUPNJE ULAZNICE NA PORTALU ULAZNICE.HR Početak kupovine... 2 Plaćanje Mastercard karticom... 5 Plaćanje Maestro karticom... 8 Plaćanje American

PuTTY CERT.hr-PUBDOC

Република Србија МИНИСТАРСТВО ПРОСВЕТЕ, НАУКЕ И ТЕХНОЛОШКОГ РАЗВОЈА ЗАВОД ЗА ВРЕДНОВАЊЕ КВАЛИТЕТА ОБРАЗОВАЊА И ВАСПИТАЊА ЗАВРШНИ ИСПИТ НА КРАЈУ ОСНОВН

Microsoft Word - 02 Elementi programskog jezika Pascal

Математика основни ниво 1. Одреди елементе скупова A, B, C: a) б) A = B = C = 2. Запиши елементе скупова A, B, C на основу слике: A = B = C = 3. Броје

Microsoft PowerPoint - Programski_Jezik_C_Organizacija_Izvrsnog_Programa [Compatibility Mode]

ALIP1_udzb_2019.indb

PLAN I PROGRAM ZA DOPUNSKU (PRODUŽNU) NASTAVU IZ MATEMATIKE (za 1. razred)

Zadaci s rješenjima, a ujedno i s postupkom rada biti će nadopunjavani tokom čitave školske godine

P11.3 Analiza zivotnog veka, Graf smetnji

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

Uvod u PHP

Програмирај!

Pojačavači

Microsoft Word - 24ms221

Шифра ученика: Укупан број бодова: Република Србија МИНИСТАРСТВО ПРОСВЕТЕ, НАУКЕ и технолошког РАзвоја ЗАВОД ЗА ВРЕДНОВАЊЕ КВАЛИТЕТА ОБРАЗОВАЊА И ВАСП

М А Т Е М А Т И К А Први разред (180) Предмети у простору и односи међу њима (10; 4 + 6) Линија и област (14; 5 + 9) Класификација предмета према свој

Sveučilište u Zagrebu Fakultet prometnih znanosti Zavod za inteligentne transportne sustave Katedra za primijenjeno računarstvo Vježba: #7 Kolegij: Ba

РЕПУБЛИКА СРПСКА МИНИСТАРСТВО ПРОСВЈЕТЕ И КУЛТУРЕ РЕПУБЛИЧКИ ПЕДАГОШКИ ЗАВОД Милоша Обилића 39 Бањалука, Тел/факс 051/ , 051/ ; p

atka 26 (2017./2018.) br. 102 NEKE VRSTE DOKAZA U ČAROBMATICI Jadranka Delač-Klepac, Zagreb jednoj smo priči spomenuli kako je važno znati postavljati

MATEMATIKA EKSTERNA PROVJERA ZNANJA UČENIKA NA KRAJU III CIKLUSA OSNOVNE ŠKOLE UPUTSTVO VRIJEME RJEŠAVANJA TESTA: 70 MINUTA Pribor: grafitna olovka i

Microsoft Word - z4Ž2018a

Microsoft PowerPoint - MR - Vjezbe - 03.ppt [Compatibility Mode]

Računarski praktikum I - Vježbe 01 - Uvod

Алгебарски изрази 1. Запиши пет произвољних бројевних израза. 2. Израчунај вредност израза: а) : ; б) : (

Programiranje 1 IEEE prikaz brojeva sažetak Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog1 2018, IEEE p

Tutoring System for Distance Learning of Java Programming Language

0255_Uvod.p65

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

Matematika 1 - izborna

Boško Jagodić ivan mrkonjić nada božičević MOJA MATEMATIKA 2 UDŽBENIK ZA UČENIKE DRUGOG RAZREDA OSNOVNE ŠKOLE

Microsoft PowerPoint - 03-Slozenost [Compatibility Mode]

Uvod u računarstvo 2+2

Microsoft Word - 11 Pokazivaci

8. razred kriteriji pravi

Oblikovanje i analiza algoritama 4. predavanje Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb OAA 2017, 4. pr

Univerzitet u Novom Sadu Tehnički fakultet Mihajlo Pupin Zrenjanin Seminarski rad Predmet: Konkuretno programiranje doc. dr Dejan Lacmanovic Zorica Br

INF INFORMATIKA INF.27.HR.R.K1.20 INF D-S INF D-S027.indd :50:41

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

Osnove inženjerske informatike II. Uvod u programiranje Vaš prvi program K. F. & V. B.

Microsoft Word - CCERT-PUBDOC doc

Microsoft PowerPoint - PRI2014 KORIGOVANO [Compatibility Mode]

Algoritmi i arhitekture DSP I

Република Србија МИНИСТАРСТВО ПРОСВЕТЕ, НАУКЕ и технолошког развоја ЗАВОД ЗА ВРЕДНОВАЊЕ КВАЛИТЕТА ОБРАЗОВАЊА И ВАСПИТАЊА ЗАВРШНИ ИСПИТ НА КРАЈУ ОСНОВН

Uvod u računarstvo 2+2

Recuva CERT.hr-PUBDOC

Uvod u računarstvo 2+2

Programiranje 1 9. predavanje Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog1 2018, 9. predavanje p. 1/6

Računarski praktikum I - Vježbe 11 - Funktori

Математика 1. Посматрај слику и одреди елементе скуупова: а) б) в) средњи ниво А={ } B={ } А B={ } А B={ } А B={ } B А={ } А={ } B={ } А B={ } А B={ }

GLOBALNI IZVEDBENI PLAN I PROGRAM ZA IZVOĐENJE NASTAVE GEOGEBRE U OSNOVNOJ ŠKOLI (matematička grupa, 1 sat tjedno) 6. razred (35 sati) I. Uvod u GeoGe

Транскрипт:

Uvod u programski jezik Python Zlatan Soldo dipl. ing. Geodetska tehnička škola Zagreb, ožujak 2014. 1

Nastao 1991. godine Zašto Python? Autor (inicijator): Guido van Rossum (National Research Institute for Mathematics and Computer Science in the Netherlands) Radi na više OS (Windows, Linux/Unix, Mac OS X) Jednostavan i lak (za početnike) interpreter Moćan za (profesionalce) Dobro dokumentiran Među Top10 po popularnosti Besplatan, dostupan na adresi: www.python.org Ime nema veze sa: Ime dobio po seriji "Monty Python's Flying Circus" 2

Ponovimo osnovne pojmove: Algoritam - precizno opisan način rješenja nekog problema Zadatak: Napiši algoritam za program koji će iz učitane duljine stranice kvadrata izračunati njegovu površinu i opseg i ispisati ih na ekranu. Algoritam Prezentacija iz udžbenika Sysprint početak: učitaj duljinu stranice a izračunaj površinu kvadrata izračunaj opseg kvadrata ispiši površinu kvadrata ispiši opseg kvadrata kraj 3

Ponovimo osnovne pojmove: Dijagram toka grafički prikaz algoritma početak Ulaz Simboli dijagrama toka su unaprijed dogovoreni Obrada Ulaz-izlaz Prezentacija iz udžbenika Sysprint odluka (grananje) Izlaz kraj 4

Ponovimo osnovne pojmove: Dijagram toka grafički prikaz algoritma Zadatak: Nacrtaj dijagram toka za program koji će iz učitane duljine stranice kvadrata izračunati njegovu površinu i opseg i ispisati ih na ekranu. početak a p = a * a O = 4 * a p o kraj 5

Ponovimo osnovne pojmove: Program - točan niz naredbi koje računalo izvršava da bi se riješio određeni zadatak. Zadatak: Napiši program koji će iz učitane duljine stranice kvadrata izračunati njegovu površinu i opseg i ispisati ih na ekranu. a = float(input ("dužina = ")) povrsina = a * a opseg = 4 * a print('površina je', povrsina) print('opseg je', opseg) 6

Ponovimo osnovne pojmove: Programiranje postupak izrade programa Programer osoba koja stvara program Analiza problema: Što i kako treba riješiti, što su ulazni podaci, a što trebamo dobiti što su izlazni podaci Planiranje: Planiranje ljudi, vremena, opreme itd., odabir programskog jezika, sastavljanje algoritma. Kodiranje: Pisanje algoritma na nekom programskom jeziku Testiranje programa i ispravljanje pogrešaka: Programe testiramo ulaznim podacima za koje unaprijed znamo rezultat Dokumentacija: Korisnička dokumentacija je neka vrsta uputa za upotrebu Programerska dokumentacija sadrži detaljan opis programa koji omogućava naknadne prilagodbe i održavanje Održavanje: Gotov program treba prilagođavati zahtjevima korisnika (nove inačice) i otklanjati uočene pogreške. 7

Ponovimo osnovne pojmove: Programski jezik sredstvo za pisanje programa Pseudo jezik ili pseudokod je način zapisa algoritma kratkim izrazima nalik govornom jeziku Zadatak: Napiši program koji će iz učitane duljine stranice kvadrata izračunati njegovu površinu i opseg i ispisati ih na ekranu. početak: učitaj duljinu stranice a površina = a*a opseg = 4 *a ispiši površina ispiši opseg kraj 8

Programi prevoditelji Interpreter Program odmah spreman za izvođenje. Svaku naredbu izvornog koda pročita, prevede i izvrši. Pročitaj naredbu Prevedi naredbu Izvrši naredbu Potraži slijedeću naredbu Kompajler Izvorni kod (source code) je tekstualna datoteka razumljiva čovjeku koja se prije izvođenja prevede (kompajlira) i tako nastaje izvršni kod koji se izvršava (na računalu pod određenim OS-om.) 9

www.python.org Python Programming Language Official Website The current production versions are Python 3.3.5. and Python 2.7.6 10

Prvo pokretanje: Nakon instalacije Integrated DeveLopment Environment 11

Python kao kalkulator Osnovne matematičke operacije: + Zbrajanje - Oduzimanje * Množenje / Dijeljenje 12

Uvodimo zagrade Pri računanju prvo se izvode računske operacije višeg reda, a zatim one nižeg reda: 1. Potenciranje 2. Množenje i dijeljenje 3. Zbrajanje i oduzimanje Primjer: 1+2*4 Napomena! Uvođenjem zagrada mijenja se redoslijed izvođenja računskih operacija. Prvo se izvode one računske operacije koje su u zagradama. Primjer: (1+2)*4 13

(malo drugačije) Dijeljenje / (obično) dijeljenje // cjelobrojno dijeljenje % ostatak cjelobrojnog dijeljenja >>> 8.5/2 4.25 >>> 8.5//2 4.0 >>> 8.5%2 0.5 14

(malo drugačije) Dijeljenje Zadatak: Ulaznica za kino košta 25 kuna. Ti imaš 72 kune. 1. Izračunaj koliko ulaznica možeš kupiti. 2. Izračunaj koliko će ti kuna ostati nakon kupovine ulaznica >>> 72//25 2 >>> 72%25 22 >>> 15

Potenciranje ** Potenciranje Napomena: Potenciranje na 1/n je isto što i n-ti korijen Primjer: 2 3 = 8 3 8 = 2 >>> 5**2 25 >>> 25**1/2 12.5 >>> 25**(1/2) 5.0 8 1/3 = 2 Izračunaj: 5 2 25 16

Matematičke funkcije Većina funkcija se nalazi u modulima. Modul je svaka datoteka s Python naredbama, čije ime ima nastavak.py Standardne matematičke funkcije su u modulu math Prije uporabe funkcija potrebno je učitati pojedinu funkciju iz modula (ili sve funkcije iz modula) Primjer: 25 = 5 sqrt (25) Napomena! Restart shell (Ctrl+F6) briše sve učitane module 17

Uvodimo varijable Svi računalni programi na neki način obrađuju podatke. Podaci se sakupljaju, pohranjuju, obrađuju i mijenjaju tijekom izvođenja programa. Svi podaci koje program koristi moraju biti pohranjeni u memoriji Memorijska lokacija u kojoj je pohranjen podatak je jedinstveno određena svojom adresom. Da biste mogli koristiti pohranjene podatke, morate znati adresu memorijske lokacije na kojoj su pohranjeni. Da bi se olakšao pristup podacima, koriste se varijable koje služe kao spona između programa i memorijskih lokacija s podacima, jer se varijabla pridružuje adresi memorijske lokacije Svaka varijabla ima ime, tip i vrijednost Kada se nova vrijednost zapisuje u varijablu, ona zamijenjuje (briše) prethodnu vrijednost Čitanje varijabli iz memorije ih ne mijenja Varijabli se pristupa zvanjem njena imena 18

Svaka varijabla ima svoje ime Ime varijable mora počinjati slovom ili podcrtom _ Ime varijable ne smije počinjati brojem Ime varijable može sadržavati slova brojke i podcrtu U imenu varijable razlikuju se velika i mala slova Mogu se (ograničeno) koristiti hrvatski dijakritički znakovi: č,ć,đ,š,ž,č,ć,đ,š,ž Savjet: Izbjegavajte ih u imenu varijable Ispravno ime varijable: a A X DUZINA_1 duzina_1 Duzina_1 _Sirina _sirina vertikalni_kut HorizontalniKut Neispravno ime varijable: 1stranica Radius*kruznice print 19

Nedozvoljena imena abs() dict() help() min() setattr() all() dir() hex() next() slice() any() divmod() id() object() sorted() ascii() enumerate() input() oct() staticmethod() bin() eval() int() open() str() bool() exec() isinstance() ord() sum() bytearray() filter() issubclass() pow() super() bytes() float() iter() print() tuple() callable() format() len() property() type() chr() frozenset() list() range() vars() classmethod() getattr() locals() repr() zip() compile() globals() map() reversed() import () complex() hasattr() max() round() delattr() hash() memoryview() set() 20

Još malo o varijablama Svaki podatak koji program obrađuje smješten je u memoriji računala na određenoj memorijskoj adresi (lokaciji). Mjesto u memoriji rezervirano za pohranu podatka naziva se varijabla. 5 Primjer: Jedno od rezerviranih memorijskih mjesta označimo kao varijablu a i pridružimo mu vrijednost 5 21

Različiti tipovi varijabli Varijable mogu biti različitog tipa. numeričke (brojčane) varijable mogu biti: Cjelobrojne (integer) a = 3 Relani (float) a = 3.8 string (nizovne) varijable su niz znakova (slova, brojke i posebni znakovi) napisan između navodnika ili tzv. jednostrukih navodnika Ostale: liste, N-torke, rječnik Primjer: >>> a=5 >>> print (a) 5 >>> A=25 >>> print (A) 25 >>> X="Pozdrav svima!" >>> print (X) Pozdrav svima! >>> print (x) Traceback (most recent call last): File "<pyshell#9>", line 1, in <module> print (x) NameError: name 'x' is not defined Naredba print ispisuje vrijednost ranije zadane varijable 22

Ništa nevažno o tipovima podataka Važno je znati da se prema različitim tipovima podataka treba različito odnositi. Na primjer, različiti tipovi brojeva zahtijevaju različitu količinu memorije za pohranu. Također, nekim s tipovima podataka možemo raditi ono što s nekim drugima ne možemo. Na primjer, brojeve možemo zbrajati, oduzimati, množiti i dijeliti, dok stringove ne možemo. S druge strane, stringove možemo ulančavati. 23

Primjeri >>> a = 5 >>> b = '12' >>> print (a) 5 >>> print (b) 12 >>> print (a+a) 10 >>> print (b+b) 1212 >>> >>> print (a+b) Traceback (most recent call last): File "<pyshell#12>", line 1, in <module> print (a+b) TypeError: unsupported operand type(s) for +: 'int' and 'str' >>> >>> print (4*b) 12121212 >>> >>> print (b*3) 121212 >>> 24

Help Naredba help prikazuje sve opcije pojedine naredbe, funkcije Primjer: >>> help (print) Help on built-in function print in module builtins: print(...) print(value,..., sep=' ', end='\n', file=sys.stdout) Prints the values to a stream, or to sys.stdout by default. Optional keyword arguments: file: a file-like object (stream); defaults to the current sys.stdout. sep: string inserted between values, default a space. end: string appended after the last value, default a newline. >>> help (math) Traceback (most recent call last): File "<pyshell#18>", line 1, in <module> help (math) NameError: name 'math' is not defined >>> import math >>> help (math) Help on built-in module math: NAME math DESCRIPTION This module is always available. It provides access to the mathematical functions defined by the C standard. FUNCTIONS acos(...) acos(x) Return the arc cosine (measured in radians) of x. acosh(...) acosh(x) Return the hyperbolic arc cosine (measured in radians) of x. asin(...) asin(x) Return the arc sine (measured in radians) of x. itd 25

cos(...) cos(x) Help Izbor nekih funkcija modula math Napomena! Konstante pi i e su dio modula math Return the cosine of x (measured in radians).. degrees(...) degrees(x) Convert angle x from radians to degrees.. radians(...) radians(x) Convert angle x from degrees to radians. sin(...) sin(x) Return the sine of x (measured in radians).. sqrt(...) sqrt(x) Return the square root of x. tan(...) tan(x) DATA e = 2.718281828459045 pi = 3.141592653589793 >>> 26

(konačno ) PROGRAMIRANJE 27

Pokreni IDLE (Python GUI) Moj prvi program 28

Moj prvi program 29

početak Zadatak: Nacrtaj dijagram toka za program koji će na temelju zadane duljine stranice kvadrata a izračunati njegovu površinu P i opseg O. Vrijednosti P i O treba ispisati ih na ekranu. Ulaz: duljina stranice a Stranica a P = a * a O = 4 * a Obrada: P=a 2 Izlaz: O=4*a površina kvadrata P opseg kvadrata O P O kraj 30

a = 2 Zadatak: Napiši program koji će na temelju zadane duljine stranice kvadrata a izračunati njegovu površinu P i opseg O. Vrijednosti P i O treba ispisati ih na ekranu. P = a * a O = 4 * a print (P) print (O) >>> Ulaz: duljina stranice a Obrada: P=a 2 O=4*a Izlaz: površina kvadrata P opseg kvadrata O Izlaz: >>> 4 8 >>> 31

Zadatak: Napiši program koji će na temelju zadane duljine stranice kvadrata a izračunati njegovu površinu P i opseg O. Vrijednosti P i O treba ispisati ih na ekranu. >>> help (print) Help on built-in function print in module builtins: print(...) print(value,..., sep=' ', end='\n', file=sys.stdout) Ulaz: Obrada: P=a 2 Izlaz: duljina stranice a O=4*a Poboljšanje: površina kvadrata P opseg kvadrata O Opišimo vrijednosti na izlazu. Koristit ćemo naredbu print Prints the values to a stream, or to sys.stdout by default. Optional keyword arguments: file: a file-like object (stream); defaults to the current sys.stdout. sep: string inserted between values, default a space. end: string appended after the last value, default a newline. 32

a = 2 Zadatak: Napiši program koji će na temelju zadane duljine stranice kvadrata a izračunati njegovu površinu P i opseg O. Vrijednosti P i O treba ispisati ih na ekranu. Ulaz: Obrada: P=a 2 Izlaz: duljina stranice a O=4*a Poboljšanje: površina kvadrata P opseg kvadrata O Opišimo vrijednosti na izlazu. Koristit ćemo naredbu print P = a * a O = 4 * a print ('Površina kvadrata je', P) print ("Opseg kvadrata je",o) >>> Površina kvadrata je 4 Opseg kvadrata je 8 >>> 33

Zadatak: Napiši program koji će na temelju zadane duljine stranice kvadrata a izračunati njegovu površinu P i opseg O. Vrijednosti P i O treba ispisati ih na ekranu. Ulaz: Obrada: P=a 2 Izlaz: duljina stranice a O=4*a površina kvadrata P opseg kvadrata O >>> help (input) Help on built-in function input in module builtins: input(...) input([prompt]) -> string Read a string from standard input. itd Poboljšanje: Omogućimo unos vrijednosti duljine stranice a s tipkovnice pomoću naredbe input Naredba input omogućava unos stringa sa standardnog ulaza 34

Zadatak: Naredba input omogućava unos stringa sa standardnog ulaza (tipkovnice) Ulaz: Poboljšanje: duljina stranice a Omogućimo unos vrijednosti duljine stranice a s tipkovnice pomoću naredbe input a = input () #kontrola unosa print (a) P = a * a O = 4 * a print ('Površina kvadrata je', P) print ("Opseg kvadrata je",o) Napomena: Duljina stranice nije string već realni broj! (Dolazi do greške u programu) 35

Zadatak: >>> 3 3 Traceback (most recent call last): File "C:\Python32\Kvadrat_3.py", line 5, in <module> P = a * a TypeError: can't multiply sequence by non-int of type 'str' >>> a = input () #kontrola unosa print (a) P = a * a O = 4 * a print ('Površina kvadrata je', P) print ("Opseg kvadrata je",o) 36

Zadatak: >>> Upiši duljinu stranice kvadrata =3.5 Duljina stranice kvadrata = 3.5 Traceback (most recent call last): File "C:/Python32/Kvadrat_3a.py", line 5, in <module> P = a * a TypeError: can't multiply sequence by non-int of type 'str' >>> a = input ("Upiši duljinu stranice kvadrata =") #kontrola unosa print ("Duljina stranice kvadrata =",a) P = a * a O = 4 * a print ('Površina kvadrata je', P) print ("Opseg kvadrata je",o) 37

a = input ("Upiši duljinu stranice kvadrata =") Zadatak: >>> Upiši duljinu stranice kvadrata =3.5 Duljina stranice kvadrata = 3.5 Površina kvadrata je 12.25 Opseg kvadrata je 14.0 >>> a = float (a) P = a * a O = 4 * a print ('Površina kvadrata je', P) print ("Opseg kvadrata je",o) 38

Zadatak: Napiši program koji će na temelju zadane duljine stranice kvadrata a izračunati njegovu površinu P i opseg O. Vrijednosti P i O treba ispisati ih na ekranu. >>> Upiši duljinu stranice kvadrata =3.5 Površina kvadrata je 12.25 Opseg kvadrata je 14.0 >>> a = float(input ("Upiši duljinu stranice kvadrata =")) P = a * a O = 4 * a print ('Površina kvadrata je', P) print ("Opseg kvadrata je",o) 39

Dodatna poboljšanja a = float (input ("Upiši duljinu stranice kvadrata u metrima ")) P = a * a O = 4 * a print ('Površina kvadrata je', P,"m četvornih") print ("Opseg kvadrata je",o, "m") >>> Upiši duljinu stranice kvadrata u metrima 3.5 Površina kvadrata je 12.25 m četvornih Opseg kvadrata je 14.0 m >>> 40

Zadatak: Nacrtaj dijagram toka za program koji će na temelju zadane duljine kateta a i b izračunati duljinu hipotenuze c. Vrijednosti c treba ispisati ih na ekranu. početak Stranica a, b c= a 2 + b 2 c kraj 41

Zadatak: Napiši program koji će na temelju zadane duljine kateta a i b izračunati duljinu hipotenuze c. Vrijednosti c treba ispisati ih na ekranu. >>> Upiši duljinu katete a=3 Upiši duljinu katete b=4 duljina hipotenuze je= 5.0 >>> # ulazni podaci a=input('upiši duljinu katete a=') b=input('upiši duljinu katete b=') # pretvaranje stringa u realni broj a=float (a) b=float (b) #izračunavanje hipotenuze from math import * c=sqrt(a**2+b**2) #ispis (izlaz) podataka print() print ('Duljina hipotenuze je=', c) 42

početak Zadatak: Nacrtaj dijagram toka za program koji će na temelju zadanog radijusa kružnice r izračunati njen opseg O i površinu kruga P r O=2*r*pi P=r**2*pi O P kraj 43

ime=input('kako se zoveš? ') godine=input('koliko imaš godina? ') Zadatak: Napiši program koji će upitati korisnika kako mu je ime i koliko ima godina. Nakon toga će ispisati poruku: (Ime korisnika) drago mi je da imaš (broj godina) godina. #godine=float(godine) print() print (ime, 'drago mi je da imaš', godine, 'godina.') >>> Kako se zoveš? Zlatan Koliko imaš godina? 57 Zlatan drago mi je da imaš 57.0 godina >>> 44

a=input ("upiši duljinu stranice a u metrima ") b=input ("upiši duljinu stranice b u metrima ") Zadatak: Napiši program koji će na temelju zadanih duljina stranica pravokutnika a i b izračunati njegovu površinu P, opseg O i duljinu dijagonale d. Vrijednosti a i b treba unijeti s tipkovnice u metrima, a vrijednosti P, O i d ispisuju se na ekranu u odgovarajućim mjernim jedinicama. a=float(a) b=float(b) P=a*b O=2*a+2*b d=(a**2+b**2)**(1/2) print () print ('Površina pravokutnika je=', P, 'metara kvadratnih') print ('Opseg pravokutnika je=', O, 'metara kvadratnih') print ('Dijagonala pravokutnika je=', d, 'metara') 45

RELACIJSKI OPERATORI : Relacijski operatori uspoređuju dva operanda Rezultat usporedbe ima vrijednost True ili False 46

RELACIJSKI OPERATORI : Relacijski operatori uspoređuju dva operanda Rezultat usporedbe ima vrijednost True ili False >>> 3>2 True >>> 2>3 False >>> 4<5 True >>> 4>5 False >>> 4>=4 True >>> 4>=2 True >>> 5<=5 True >>> 5<=6 True >>> 7==7 True >>> 7==8 False >>> 8!=8 False >>> 8!=9 True >>> 47

Donošenje odluka u programima: ako je, onda i inače (engl. if, then, else) ključne riječi u Pythonu: if, else i elif, print ('Program će ispitati je li broj koji unesete veći ili manji od 10') broj=int(input('unesi broj')) if broj > 10: else: print ('Broj je veći od deset') print ('Broj je manji od deset') Pitanje: što će biti ako upišemo broj 10? 48

Donošenje odluka u programima: ako je, onda i inače (engl. if, then, else) ključne riječi u Pythonu: if, else i elif, print ('Proram će ispitati je li broj koji unesete veći ili manji od 10') broj=int(input('unesi broj ')) if broj > 10: print ('Broj je veći od deset') #ispituje da li je broj jednak 10 elif broj==10: print('broj je jednak 10') else: print ('Broj je manji od deset') 49

Donošenje odluka u programima: ako je, onda i inače (engl. if, then, else) ključne riječi u Pythonu: if, else i elif, Napiši program koji će za neki broj (unesen s tipkovnice) ispitati da li je pozitivan ili negativan. Rezultate ispitivanja treba ispisati na ekranu. 50

Donošenje odluka u programima: ako je, onda i inače (engl. if, then, else) ključne riječi u Pythonu: if, else i elif, Napiši program koji će za neki broj (unesen s tipkovnice) ispitati da li je paran ili neparan. Rezultate ispitivanja treba ispisati na ekranu. (Napomena: parni brojevi su oni koji su djeljivi s 2 bez ostatka) 51

Donošenje odluka u programima: ključne riječi u Pythonu: if, else i elif, Napiši program koji će za prirodni broj upisan putem tipkovnice provjeriti parnost. (Napomena: parni brojevi su oni koji su djeljivi s 2 bez ostatka) n=int(input("upiši prirodni broj ")) if n%2==0: print("broj je paran!") else: print("broj je neparan") 52

Donošenje odluka u programima: ključne riječi u Pythonu: if, else i elif, broj = 25 pretpostavka = int(input('unesite broj: ')) if pretpostavka == broj: print('bravo, pogodili ste.') print('(ali to ne znaci da ste genije!)') elif pretpostavka < broj: print('ne, broj je veci') else: print('ne, broj je manji') print('gotovo') 53

Petlje: ključne riječi u Pythonu: for in range print ('Ispisujemo brojeve redom:') for n in range (1,15): print (n) Pitanje: Zašto je niz stao na 14? Ispisujemo brojeve redom: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 54

Petlja: ključne riječi u Pythonu: for in range Napiši program koji će ispisati sve cijele brojeve od 1 do 20 print ('Ispisujemo brojeve redom:') for kontrolni_broj in range (1,21): print (kontrolni_broj) 55

Petlja: ključne riječi u Pythonu: for in range Napiši program koji će ispisati sve cijele brojeve od donje do gornje granice koju zadajemo putem tipkovnice dg=int(input('upiši donju granicu ranga: ')) gg=int(input('upiši gornju granicu ranga: ')) print ('Ispisujemo brojeve redom:') for kontrolni_broj in range (dg,gg+1): print (kontrolni_broj) print ('Kraj programa') 56

Petlje: ključne riječi u Pythonu: for in range Ispis svih parnih brojeva u rasponu for broj in range(1,10): print (broj*2) else: print ('Prikazani su svi parni brojevi od 1 do 20') for broj in range(1,11): print (broj*2) else: print ('Prikazani su svi parni brojevi od 1 do 20') 57

Napomena: Drage učenice i dragi učenici, ova prezentacija nije rađena kao nastavni materijal za samoučenje već kao pomoćno sredstvo koje smo koristili tijekom predavanja. Onima koji su propustili dio predavanja ili se žele podsjetiti na neke dijelove predavanja može poslužiti i kao materijal za samoučenje odnosno ponavljanje gradiva. Puno uspjeha i zadovoljstva u programiranju želi vam Prof. Zlatan Soldo 58