Diskuze: Vyvolání opětovného zeptání se na početní operaci
Zobrazeno 4 zpráv z 4.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
Řádek s input() dej až do smyčky, hned za while
A pokud máš text na více řádků, tak se dá zadat přes 3 uvozovky
= """"Vítejte v Kalkulačce.\n
╔═══════════════════════════════╗
║ Sčítání. ║
╠═══════════════════════════════╢
║ Odečítání. ║
╠═══════════════════════════════╢
║ Násobení. ║
╠═══════════════════════════════╢
║ Dělení. ║
╚═══════════════════════════════╝"""
Nevšiml jsem si, že máš input() i v podmínkách, mluvil jsem o tom
prvním. A taky, že while nemá True, ale proměnnou
Nicméně celý program bych, jednak pro zjednodušení a jednak pro větší
uživatelskou přívětivost přepsal do tohoto:
print("""Vítejte v Kalkulačce.
╔═══════════════════════════════╗
║ Sčítání. ->+ ║
╠═══════════════════════════════╢
║ Odečítání. -> - ║
╠═══════════════════════════════╢
║ Násobení. -> * ║
╠═══════════════════════════════╢
║ Dělení. -> / ║
╚═══════════════════════════════╝""")
vyberPocetniOperace = "a" #aby prošla smyčka
while vyberPocetniOperace:
vyberPocetniOperace = input("Prosím, vyberte si z následujícich možností: ")
prvniCislo = float(input("Vyberte si první čislo: "))
druheCislo = float(input("Vyberte si druhé číslo: "))
if vyberPocetniOperace == "Sčítání." or vyberPocetniOperace == "+":
print("Vybral sis sčítání.")
print("Výsledek sčítání je:",prvniCislo+druheCislo)
elif vyberPocetniOperace == "Odečítání." or vyberPocetniOperace == "-":
print("Vybral sis odečítání.")
print("Výsledek odečítání je:",prvniCislo-druheCislo)
elif vyberPocetniOperace == "Násobení." or vyberPocetniOperace == "*":
print("Vybral sis násobení.")
print("Výsledek násobení je:",prvniCislo*druheCislo)
elif vyberPocetniOperace == "Dělení." or vyberPocetniOperace == "/":
print("Vybral sis dělení.")
print("Výsledek dělení je:",prvniCislo/druheCislo)
else:
print("\nPokud se po vybrání početní operace a zadání čísel nic nestalo, zkontrolujte, že jste zadali pouze znaménko, nebo její správné opsání z tabulky (i s tečkou).\nNa dalších možností se pracuje.")
Celé by se to dalo ještě dost zjednodušit, ale to už bych do toho tahal "jednořádkové prasárny" (dokonalá schopnost Pythonu napsat celé kusy kódu na jeden relativně krátký a dokonale nepřehledný řádek), ale soudím dle textové kalkulačky, že jsi v Python teprve začátečník. Kód jsem nespouštěl, jenom sepsal z hlavy, tak možná vyskočí nějaká chybička, ale s tou by sis měl poradit.
Taková hloupost, děkuji moc.
Ano, začátečník, snad si poradím.
Ještě jednou díky.
Zobrazeno 4 zpráv z 4.