Hogyan lehetne megoldani ezt a feladatot Python-ban? (Kezdő szint.)
Sziasztok!
Egy feladat megoldásában kérném a segítséget, még nem igazán értem, hogyan működik a Python. :D Szóval:
"Írj egy Python programot, amely bekér egy 20-nál nem nagyobb pozitív egész számot a felhasználótól, és kiírja a képernyőre a START szót úgy, hogy előtte annyi szóköz legyen, amennyi a megadott szám értéke."
Valaki esetleg tudna segíteni? 😅
Köszönöm szépen előre is!
'string' * n
megismétli az adott stringet "n"-szer. Természetesen egyetlen karakterre is működik.
elöször be kell kérni a számot a felhasználótól. Erre való az input nevü függvény.
> adat = input()
viszont az input nem egy számot ad vissza, hane egy karakterláncot(stringet). A stringeket az int nevü függvénnyel tudod számmá alakítani:
> szam = int(adat)
Ezután le kell ellenörizni, hogy a szám megfelel-e az elvárásainknak (tehát 1 és 20 közé esik-e). Erre való az if.
> if kifejezés:
> __ezt csinálja, ha igaz.
(megjegyzés: a gyakorikérdések eltünteti a sor eleji szóközöket, de pythonban ezek kellenek az indentációhoz, úgyhogy _ karakterrel helyettesítettem)
A mi esetünkben így fog kinézni:
> if szam < 1 OR szam > 20:
> __quit() # ha nem jó a számunk, akkor simán kilépünk, egyelöre
Mostmár csak össze kell állítani a kimenetet:
két része van, néhány darab szóköz, meg a start szó.
Ahogy az egyes mondta, a szorzás operátorral(*) tudunk stringeket többszörözni, tehát pl 'ab'*3 == 'ababab'
> szoközök = ' '*szam
Stringeket össze tudsz füzni a + operátorral, pl 'a'+'bc' == 'abc'
Ezt felhasználva már össze tudjuk rakni a végsö stringet:
> eredmeny = szoközök + 'START'
Ezek után csak ki kell íratni a képernyöre, és késszen is vagyunk:
> print(eredmeny)
Köszönöm szépen a segítséget!
Olyan kérdésem lenne még, hogy ha mondjuk az if és az else függvényeket használom, és megadom, hogy csak 0-20-ig fogadja el a bekért számot, és a kimenetben ki is írja, ha a megadott szám nem megfelelő, de a start és az adott számú szóköz ennek ellenére mégis megjelenik, azzal mit tudok kezdeni? :(
Az if/else nem függvény, hanem utasítás (statement), ahogy a ciklusok is. :)
Nem kötekedésből mondom. :)
Bocsánat, igazad van. :) Még zavaros ez az egész. 😅
Lenne még egy feladat, amiben bizonytalan vagyok: ha azt kell kiíratni, hogy egy felhasználótól bekért szám pozitív páros vagy negatív páratlan, azt hogyan lehet megcsinálni?
A páros-páratlant a 2-vel osztással, a pozitív/negatívat pedig a 0-hoz képest kisebb-nagyobbal próbáltam, de valamiért nem fogadja el.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!