Hogyan lehet Pythonban szorzótáblát készíteni?
1 2 3 4 5
2 4 6 8 10
3 6 9 12 15
4 8 12 16 20
5 10 15 20 25
Így kéne kinéznie a programnak, én viszont csak addig jutottam, hogy kiírja a felső sort meg a bal oldali oszlopot
Kikötés:x = 1 és y = 1 sorok csak egyetlen egy helyen szerepelhetnek (ezt se tudom hogyan kell)
x = 1
while (x <= 10):
row = ""
y = 1
while (y <= 10):
row += format(x*y, ">4")
y += 1
print row
x += 1
Itt egy szépen formázott 10x10es szorzótábla, ahol az első sor és az első oszlop a szorzót és a szorzandót tartalmazza: https://pastebin (pont) com/dkzi5330
Ha ezekre ezekre nincs szükség, akkor a kód lényegesen egyszerűbbé válik: https://pastebin (pont) com/LuXWWkYc
Ha már Python, akkor minimalizáljuk a sorok számát.
pastebin(pont)com/MVw16Q2F
Az #1-esnek mondom, rossz szokás minden ok nélkül cikluson kívül szemetelő változót bevezetni, és kézzel növelgetni. Az előre ismert hosszúságú ciklusokhoz sem illik while-t használni for helyett.
Még annyi, hogy a sztringek hozzátapasztásos módszerrel való építgetése ugyan nem a világ vége, de minden egyes hozzátapasztásnál új memóriafoglalással jár, és a teljes sztringet minden alkalommal újramásolja. Ez azért van, mert a sztring objektum változtathatatlan (immutable). Tehát ha nagyüzemben csinálja az ember, jobb listába gyűjteni a darabokat és a végén, egy lépésben "".join(...)-nal elkészíteni a teljes sztringet.
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!