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
berenyiénvagyok
kérdése
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
Nayem{ Informatikus }
válasza
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.