Ulazni podaci (input), procesiranje i izlazni podaci (output)

Računarski program se tipično sastoji od tri koraka:

  1. Dobivanje ulaznih podataka
  2. Procesiranje ulaznih podataka
  3. Proizvodnja izlaznih podataka

print funkcija

String

Prikazivanje izlaznih podataka koristeći print funkciju

  • Funkcija: dio postojećeg koda koji izvršava neku operaciju
  • print funkcija: prikazuje izlazne podatke na ekranu
  • Argument: podatak koji se daje funkciji
    • Primjer: podatak koji se ispisuje na ekran
  • Naredbe programa se izvršavaju redoslijedom kojim se pojavljuju
    • Odozgo prema dole

 

Navodnici i apostrofi

String i doslovne vrijednosti stringa

  • String (znakovni niz): niz znakova koji se koristi kao podatak
  • Doslovna vrijednost (sirovi podatak) stringa: string podatak koji se pojavljuje u kodu programa
    • Mora biti zatvoren apostrofima (‘) ili navodnicima (“)
    • Doslovna vrijednost stringa se može zatvoriti trostrukim apostrofima ili navodnicima (''' ili """)
      • Može sadržavati i apostrofe i navodnike
      • Može imati više linija

Komentari

Komentari

  • Komentari: zabilješke unutar programa
    • Pythonov interpreter ih ignoriše
      • Namjenjeni osobi koja čita kod programa
    • Počinju znakom #
  • Komentar na kraju linije: pojavljuje se na istoj liniji sa kodom, ali nakon njega
    • Obično objašnjava svrhu te linije

 

Varijable

varijabla = izraz
godine = 30

Varijable

  • Varijabla: ime koje predstavlja vrijednost pohranjenu u memoriji računara
    • Koristi se za pristup i rad sa podacima pohranjenim u memoriji
    • Varijabla referencira vrijednost koju predstavlja
  • Operator dodjele: koristi se za kreiranje varijable i čini da ta varijabla pokazuje na (referencira) vrijednost
    • Operator dodjele: znak jednakosti (=)

 

godine = 30

Varijable

  • U naredbi dodjele, varijabla kojoj se dodjeljuje vrijednost mora biti na lijevoj strani
  • Varijabla se može proslijediti kao argument funkciji
    • Naziv varijable se ne zatvara navodnim znacima

Pravila za naziv varijable

  • Pravila za naziv varijable u Pythonu:
    • Naziv varijable ne može biti ključna riječ
    • Naziv varijable ne smije sadržavati prazna mjesta
    • Prvi znak mora biti slovo ili donja crta
    • Nakon prvog znaka moguće koristiti slova, brojeve ili donje crte
    • Nazivi varijabli razlikuju velika i mala slova
  • Naziv varijable bi trebao oslikavati njenu upotrebu

Prikazivanje više elemenata koristeći print funkciju

  • Python dozvoljava prikazivanje više podataka koristeći jedan poziv print  funkcije
    • Podaci su razdvojeni zarezom kada se prosljeđuju kao argumenti
    • Argumenti se prikazuju redoslijedom kojim su proslijeđeni funkciji
    • Podaci se automatski razdvajaju praznim mjestom prilikom prikazivanja na ekranu

 

Izmjena varijable

  • Varijable mogu pokazivati na druge vrijednosti prilikom izvršavanja programa
    • Sakupljanje smeća: uklanjanje vrijednosti na koje varijable više ne pokazuju
    • Izvršava ga Pythonov interpreter

Numerički tipovi podataka i njihove doslovne vrijednosti

  • Tipovi podataka: određuju vrijednost u memoriji (govore šta nule i jedinice predstavljaju)
    • npr. int za cijeli broj, float za realne brojeve, str za stringove
  • Numerička doslovna vrijednost: broj napisan u programu
    • Ukoliko nema decimalne tačke int, u suprotnom float
  • Neki operatori se ponašaju drugačije u zavisnosti od tipa podatka

Izmjena varijable

  • Varijabla može pokazivati na varijablu bilo kojeg tipa
    • Varijabla koja je bila dodjeljena jednom tipu podatka se može preraspodijeliti drugom tipu podatka

Unos ulaznih podataka

Čitanje unosa sa tastature

  • Većina programa treba dobiti ulazne podatke od korisnika
  • Ugrađena funkcija input čita ulazne podatke sa tastature
    • Vraća podatke kao string
    • Format: varijabla = input(poruka)
      • poruka je najčešće string koji korisniku govori da unese vrijednost
    • Ne prikazuje prazno mjesto nakon poruke
varijabla = input(poruka)

Čitanje brojeva koristeći input funkciju

  • input funkcija uvijek vraća string
  • Ugrađene funkcije vrše promjenu tipa podatka
    • int(podatak) mijenja podatak u int
    • float(poadatak) mijenja podatak u float
    • Ugniježdeni poziv funkcije
      • format: funkcija1(funkcija2(argument))
      • vrijednost koju vraća funkcija2 je proslijeđena funkciji1
    • Mijenjanje tipa podatka radi ukoliko podatak ima ispravnu numeričku vrijednost; u suprotnom dolazi do izuzetka

Računanje

Računanje

  • Matematički izraz: vrši računanje i daje vrijednost
    • Matematički operator: alat za izračunavanje
    • Operandi: vrijednosti koje okružuju operator
      • varijable se mogu koristiti kao operandi
    • Rezultat se najčešće dodjeljuje varijabli

 

Prednost operatora i grupisanje pomoću zagrada

  • Prednost operatora u Pythonu:
    • Izrazi unutar zagrada
    • Stepenovanje (**)
    • Množenje (*), dijeljenje (/ and //), and ostatak dijeljenja (%)
    • Sabiranje (+) i oduzimanje (-)
  • Prvo se izvršavaju operacije većeg prioriteta
    • Operatori istog prioriteta se izvršavaju sa lijeva na desno

Samo kod ponavljanja operatora '**' operacije se izvršavaju sa desna na lijevo.

Prednost operatora i grupisanje pomoću zagrada

Operatori stepenovanja i ostatka dijeljenja

  • Operator stepenovanja (**): stepenuje vrijednost
    • x ** y = \(x^y\)
  • Ostatak dijeljenja (%): Vrši cjelobrojno donje dijeljenje i vraća ostatak
    • drugi naziv: modul operator
    • npr: 4%2=0
    • npr: 5%2=1
    • tipična upotreba u pretvaranju vremena i udaljenosti, i određivanju parnosti broja
P = \frac{F}{(1+r)^n}

Pretvaranje matematičkih formula u programske izraze

  • Operator potreban za bilo koju matematičku operaciju
  • Prilikom pretvaranja matematičkih u programske izraze:
    • Može biti potrebno dodavanje operatora množenja
    • Može biti potrebno dodavanje zagrada
    • Nije moguće koristiti simbole (npr. 𝜋 ili 𝜔)

Pretvaranje matematičkih formula u programske izraze

Izrazi miješanog tipa i promjena tipa podatka

  • Tip podatka rezultata matematičke operacije zavisi od tipa podatka operanda
    • Dvije int vrijednosti: rezultat je int
    • Dvije float vrijednosti: rezultat je float
    • int i float: int se privremeno mijenja u float, rezultat je float
      • Izraz miješanog tipa
    • Promjena tipa iz floata u int uzrokuje skraćivanje dijela iza decimalnog zareza

Spajanje stringa

Dodatna kontrola ispisa

Dodatna kontrola ispisa

  • print funkcija prikazuje liniju izlaznih podataka
    • Znak za novu liniju se dodaje na kraju ispisanih podataka
    • Poseban argument end=‘granicnik’ uzrokuje da print stavi granicnik nakon ispisa izlaznih podatak umjesto novog reda
  • print funkcija koristi prazno mjesto za razdvajanje elemenata
    • Poseban argument sep=‘granicnik’ uzrokuje da print koristi granicnik za razdvajanje elemenata

Dodatna kontrola ispisa

  • Posebni znakovi koji se pojavljuju u doslovnim vrijednostima stringa
    • Prethodi im obrnuta kosa crta (\)
      • primjeri: novi red (\n), tab (\t)
    • Tretiraju se kao komande ugrađene u string
  • Operator + između dva stringa vrši spajanje
    • Korisno za razdvajanje stringova

Uređivanje ispisa brojeva

  • Moguće urediti prikazivanje brojeva na ekranu upotrebom f-stringa
    • Prije stringa piše se slovo f
    • Rezervisano mjesto se označava vitičastim zagradama i sadrži:
      • Numerička vrijednost koja se uređuje
      • Specifikacija formata
    • Specifikacija formata obično uključuje preciznost i tip podatka
      • Može navesti korištenje „scientific“ notacije, grupisanje cifri i širinu polja za prikaz vrijednosti

 

Uređivanje ispisa brojeva

 

  • Znak % se može koristiti u specifikaciji formata da uredi broj kao procenat
  • Za formatiranje integera:
    • d se koristi kao definisanje tipa
    • Ne navodi se preciznost
    • Moguće koristiti format funkciju za podešavanje širine polja ili grupisanje cifri
  • Redoslijed prilikom upotrebe više specifikatora formata:
[poravnavanje][širina][,][.preciznost][tip]

Programiranje I - P02

By Elmedin Selmanovic

Programiranje I - P02

  • 1,428