1.) Korisnik unosi koordinate (x,y) a algoritam treba odrediti u kojem se kvadrantu nalaze zadane koordinate.
x=int(input("Unesite koordinatu x: ")) y=int(input("Unesite koordinatu y: ")) if x==0 and y==0: print("Zadana koordinata je 0,0") elif x>0 and y>0: print("Koordinata (",x,",",y,") se nalazi u prvom kvadrantu") elif x<0 and y>0: print("Koordinata (",x,",",y,") se nalazi u drugom kvadrantu") elif x<0 and y<0: print("Koordinata (",x,",",y,") se nalazi u trećem kvadrantu") elif x>0 and y<0: print("Koordinata (",x,",",y,") se nalazi u četvrtom kvadrantu")
2.) Napišite program koji računa površinu trokuta pomoću Heronove formule. Korisnik unosi stranice (a, b, c). Algoritam treba smjestiti unutar beskonačne while petlje. Petlja se prekida kada korisnik na pitanje (Želite ponovo računati površinu trokuta (d/n)?) unese slovo n.
P=sqrt(s(s-a)(s-b)(s-c)), s=(a+b+c)/2
import math print("Heronova formula") a=int(input("Unesite stranicu a: ")) b=int(input("Unesite stranicu b: ")) c=int(input("Unesite stranicu c: ")) s=(a+b+c)/2 p=math.sqrt(s*(s-a)*(s-b)*(s-c)) print ("Površina trokuta iznosi:",round(p,4))
3.) Napravite algoritam za računanje kvadrata binoma (ax+by) ^2. Korisnik unosi koeficijente a i b a program ispisuje rezultat u obliku:
ax^2 + bxy +by^2
print("Kvadrat binoma (ax + by)^2") a=int(input("Unesite a: ")) b=int(input("Unesite b: ")) k1=a**2 k2=2*a*b k3=b**2 #sep='' se koristi za uklanjanje razmaka #pokušajte pokrenuti program bez sep='' print(k1,"x^2 + (",k2,"xy) + ",k3,"y^2", sep='')
4.) Pomoću for petlje napravite algoritam koji računa prvih n potencija broja 2 (2^1, 2^2, 2^3, … 2^n ). Korisnik unosi n s tipkovnice.
print("Potencije broja 2") n=int(input("Unesite n: ")) # pokušajte otkrit zašto piše i in range(1,n+1) for i in range(1,n+1): pot=2**i print ("2 ^",i,"iznosi:",pot)
5.) Napravite program koji od n unesenih brojeva ispisuje najveći i najmanji neparan broj. Korisnik s tipkovnice unosi n a zatim željene brojeve. U slučaju da korisnik ne unese niti jedan neparan broj, program ispisuje poruku (Među unesenim brojevima nema neparnih).
print("Najmanji i najveći neparan broj") n=int(input("Koliko brojeva želite unjeti: ")) provjera=0 min=0 max=0 for i in range(0,n): # obratite pažnju na %(i+1) i kako se koristi broj=int(input("Unesite %i. broj: "%(i+1))) if provjera==0 and broj%2!=0: min=max=broj provjera=1 elif broj%2!=0 and min>broj: min=broj elif broj%2!=0 and max<broj: max=broj if provjera==0: print("Niste unjeli niti jedan neparan broj!") elif min==max: print("Najmanji i najveći neparan broj su jednaki:",min) else: print("Najmanji neparan broj je:",min) print("Najveći neparan broj je:",max)
6.) Napišite program koji računa prosječnu visinu učenika u razredu. Korisnik unosi željeni broj učenika n te visine učenika v. Nakon unosa svih potrebnih podataka, program ispisuje sljedeće podatke (prosječna visina, najniži učenik, najviši učenik).
print("Prosječna visina učenika") n=int(input("Unesite broj učenika: ")) min=0 max=0 zbroj=0 for i in range(0,n): v=int(input("Unesite visinu %i. učenika: " %(i+1))) zbroj=zbroj+v if i==0: min=max=v elif min>v: min=v elif max<v: max=v print("Najniži učenik:",min) print("Najviši učenik:",max) prosjek=zbroj/n print("Prosječna visina učenika:",round(prosjek,2))
7.) Napišite program koji radi statističku analizu rezultata ispita. Korisnik unosi željeni broj ocjena a nakon unosa, program će izračunati i ispisati podatke prikazane u primjeru ispod:
- Nedovoljan: 25%
- Dovoljan: 40%
- Dobar: 25%
- Vrlo dobar: 7%
- Odličan: 3%
- Prosječna ocjena iznosi: rezultat
print("Statistička analiza rezultata ispita") n=int(input("Unesite željeni broj ocjena: ")) o1=0 o2=0 o3=0 o4=0 o5=0 ukupno=0 for i in range(0,n): o=int(input("Unesite %i. ocjenu: " %(i+1))) ukupno=ukupno+o if o==1: o1=o1+1 elif o==2: o2=o2+1 elif o==3: o3=o3+1 elif o==4: o4=o4+1 elif o==5: o5=o5+1 print("") postotak=(o1/n)*100 print(round(postotak,2),"% Nedovoljan") postotak=(o2/n)*100 print(round(postotak,2),"% Dovoljan") postotak=(o3/n)*100 print(round(postotak,2),"% Dobar") postotak=(o4/n)*100 print(round(postotak,2),"% Vrlo dobar") postotak=(o5/n)*100 print(round(postotak,2),"% Odličan") prosjek=ukupno/n print("Prosječna ocjena iznosi:",round(prosjek,2))
8.) Napišite algoritam koji računa kvadratnu jednadžbu (ax^2+bx+c=0). Korisnik unosi koeficijente a, b i c a program ispisuje rezultate x1 i x2. Neka se cijeli algoritam izvršava unutar beskonačne while petlje.
Formula:
- D=b^2-4*a*c
- x1=(-b+sqrt(D))/(2*a)
- x2=(-b-sqrt(D))/(2*a)
- Ako je D>0 ispisati rezultate x1 i x2
- Ako je D=0 ispisati (x1 i x2 imaju zajedničko rješenje)
- Ako je d<0 ispisati (Ne postoje realna rješenja)
import math print("Algoritam za rješavanje kvadratne jednadžbe ax^2 + bx + c = 0") x1=0 x2=0 # petlja za beskonačno izvođenje programa while True: # unos podataka a=float(input("Unesite a: ")) b=float(input("Unesite b: ")) c=float(input("Unesite c: ")) # računanje diskriminante d=b**2-4*a*c # provjera uvjeta if d<0: # ovdje koristimo round() funkciju za određivanje broja decimalnih mjesta print("Jednadžba nema realnih rješenja pošto je D < 0:",round(d,4)) elif d==0: x1=(-b)/(2*a) print("Jednadžba ima jedno dvostruko rješenje pošto je D = 0:",round(x1,4)) elif d>0: x1=(-b+math.sqrt(d))/(2*a) x2=(-b-math.sqrt(d))/(2*a) print("Jednadžba ima dva rješenja pošto je D > 0:",round(d,4)) print("Rješenje x1:",round(x1,4)) print("Rješenje x2:",round(x2,4)) # ovdje unosimo znak (char) stoga ne koristimo int(input("")) nastavak=input("Želite nastaviti (d/n)? ") # uvjet za prekid izvođenja programa if nastavak=='n': break