Možná řešení
Úloha 2
Napište program, který vypíše jednoduchou účtenku …
python# headers
h1 = 'Položka'
w1 = len(h1)
h2 = 'počet'
w2 = len(h2)
h3 = 'cena'
print(f'{h1:{w1}} | {h2:{w2}} | {h3}')
# values
v1 = 'sešit'
v2 = 2
v3 = 35
print(f'{v1:{w1}} | {v2:{w2}} | {v3} Kč')
Úloha 4
Napište program, který se uživatele zeptá …
pythonjméno = input('Jak se jmenujete? ') # type: str
bydliště = input('Kde bydlíte? ') # str
věk = int(input('Kolik je Vám let? ')) # int
print(f'Dobrý den, pane/paní {jméno},')
print(f'bydlíte v městě {bydliště}')
print(f'a za rok Vám bude {věk + 1} let.')
Úloha 6
Přepona pravoúhlého trojúhelníku:
pythona = float(input('Zadejte délku první odvèsny: ')) # float
b = float(input('Zadejte délku druhé odvèsny: ')) # float
import math
c = math.sqrt(a*a + b*b) # float
print(f'Délka přepony je {c:.2f}.')
Je trojúhelník pravoúhlý?
pythonx = float(input('Zadejte délku první strany: ')) # float
y = float(input('Zadejte délku druhé strany: ')) # float
z = float(input('Zadejte délku třetí strany: ')) # float
# tři možné přepony: x nebo y nebo z (hypotenuse)
from math import isclose
hypX = isclose(x**2, y**2 + z**2) # bool
hypY = isclose(y**2, z**2 + x**2) # bool
hypZ = isclose(z**2, x**2 + y**2) # bool
# Je nebo není pravúhlý?
isOrNot = 'je' if (hypX or hypY or hypZ) else 'není' # str
print(f'Zadaný trojúhelník {isOrNot} pravoúhlý.')
Jméno a věk trojice:
pythonFr = 'Frodo'
FrAge = 50
Gd = 'Gandalf'
GdAge = 2000
Ar = 'Aragorn'
ArAge = 87
Řešení s podmíněnými výrazy: tři ternární operace, tři porovnání:
pythonoldest = (Gd if ArAge < GdAge else Ar) if FrAge < GdAge else (Ar if FrAge < ArAge else Fr)
Nebo dvě ternární operace, tři porovnání a jedna logická operace:
pythonoldest = Gd if (FrAge < GdAge and ArAge < GdAge) else (Ar if FrAge < ArAge else Fr)
Automat na přání:
pythonjméno = input('Jak se jmenujete? ')
print(f'Dobrý den, pane/paní {jméno},')
věk = int(input('Kolik je Vám let? ')) # int
AGE = 18 # hranice dospělosti
mladistvý = věk < AGE # bool
print(f'Gratuluji k {"Vašemu mládí" if mladistvý else "Vaší moudrosti"}!')
volba = input('Přejete si vodu nebo vodku? ')
chciVodu = 'vodu' == volba # True: vodu, False: vodku
# texty
dámVodu = 'Zde je voda.'
dámVodku = 'Zde je vodka.'
nedámVodku = 'Zde je voda místo vodky.'
# hotovo, rozhodnuto
výdej = dámVodu if chciVodu else (nedámVodku if mladistvý else dámVodku)
print('Děkuji za důvěru.', výdej)