Keresés


Toplista

Toplista
  • betöltés...

Magántanár kereső

Ha szívesen korrepetálnál, hozd létre magántanár profilodat itt.
Ha diák vagy és korrepetálásra van szükséged, akkor regisztrálj be és írd meg itt, hogy milyen tantárgyban!

Pythonban elakadtam

168
Most kezdtünk el foglalkozni a suliban a pythonnal, valami okos programozó eltudná magyarázni ezt a programot, hogy megértsem, mert elakadtam. Előre is köszi! :)

Számítsd ki a felhasználó által bevitt n szám átlagát. osszeg=0
n=int(input("Hany szamnak szamoljam az atlagat:"))
for i in range(1,n-1):# Az i valójában 0,1,2 lehett, adjuk meg határonként inkább.
szoveg="Kerem a(z)" + str(i)+".szamot:"
szam=int(input(szoveg))
osszeg=osszeg+szam#Az összeg értékét ha folyamatosan növeljük, akkor az új értéket = tesszük, tehát osszeg=osszeg, + a számot hozzáadjuk.
print("A bevitt", n "szam osszege:",osszeg)
atlag=osszeg/n
atlag=round(atlag,2)
print("A bevitt", n "szam atlaga:",atlag)
Jelenleg 1 felhasználó nézi ezt a kérdést.
0
Középiskola / Informatika

Válaszok

1
n: futtatáskor bekér a felhasználótól egy egész számot
Ha pl n = 4, akkor
for i in range(1, n-1): itt a range(-tól, -ig) -et jelent, viszont az -ig helyére beírt szám már nem jelenik meg, mivel -ig-1 lesz a range. Ha pl beírnám ide csak simán azt hogy
for i in range(1, 4), akkor az i = 1, 2, 3
for i in range(1, 4-1) esetén az i = 1, 2
for i in range(4) esetén pedig i = 0, 1, 2, 3 lenne, mivel alapesetben a for ciklus 0-ról indít.
(Egyébként a for ciklus range részébe beírt szám határozza meg hogy hányszor fut le a belső ciklus)

szoveg="Kerem a(z)" + str(i)+".szamot:" Itt az i lesz a változó, minden futásnál 1-el nőni fog az i. Példád szerint 1-el indul, utána 2 lesz stb... Első futásnál a szoveg változó = lesz a "Kérem a(z) 1. számot:"-tal.

szam=int(input(szoveg)): bekér a felhasználótól egy egész számot, ami a szam változó lesz

osszeg=osszeg+szam: az osszeg változóba elmenti az osszeg + (előzőleg bekért) szám összegét.

print("A bevitt", n "szam osszege:",osszeg) Magától értetődő szerintem

atlag=osszeg/n kiszámolja az átlagot és elmenti az atlag változóba

majd az atlag változó értékét kerekíti 2 tizedesjegyre és felülírja az atlag változót erre az értékre

végül az utolsó print(...) utasítással kiírja az átlagot.
0