Upravit tuto stránku na GitHubu
Cvičení: Procházení textu
Každé cvičení má vlastní soubor ve složce lekce03-funkce-a-cyklus-for/03_prochazeni/cviceni/. Otevři ho ve VS Code, doplň kód pod zadání a soubor spusť (Run). Řešení si rozklikni až po vlastním pokusu – tvoje řešení může vypadat jinak, a to je v pořádku.
Cvičení 1
Soubor: cviceni/01_analyza_vety.py
Analýza věty. Uživatel zadá větu. Projdi ji znak po znaku a vypiš počet znaků, počet samohlásek, počet mezer a počet slov ve větě. (Počet slov = počet mezer + 1.)
Zobrazit řešeníSkrýt řešení
veta = input("Napiš větu: ")
samohlasky = 0
mezery = 0
for znak in veta:
if znak in "aeiou":
samohlasky = samohlasky + 1
if znak == " ":
mezery = mezery + 1
print("Počet znaků:", len(veta))
print("Samohlásek:", samohlasky)
print("Mezer:", mezery)
print("Slov:", mezery + 1) # slov je o jedno víc než mezer
Cvičení 2
Soubor: cviceni/02_bum_bac.py
Bum-Bác. Tuhle úlohu znáš z minula pro jedno číslo – teď ji necháme proběhnout cyklem. Vypiš čísla od 1 do 30, ale:
-
za dělitelné třemi i pěti zároveň vypiš "BumBác",
-
za dělitelné jen třemi vypiš "Bum",
-
za dělitelné jen pěti vypiš "Bác",
-
jinak vypiš samotné číslo.
Zobrazit řešeníSkrýt řešení
for cislo in range(1, 31):
if cislo % 15 == 0: # dělitelné 3 i 5 = dělitelné 15, musí být první
print("BumBác")
elif cislo % 3 == 0:
print("Bum")
elif cislo % 5 == 0:
print("Bác")
else:
print(cislo)
Cvičení 3
Soubor: cviceni/03_statistika_cisel.py
Statistika čísel. Uživatel zadá, kolik čísel bude zadávat, a pak ta čísla postupně napíše. V jednom průchodu cyklem spočítej a vypiš jejich součet, průměr, největší a nejmenší číslo. Nepoužívej funkce sum, max ani min – spočítej vše sama cyklem.
Zobrazit řešeníSkrýt řešení
pocet = int(input("Kolik čísel zadáš? "))
prvni = int(input("Zadej číslo: "))
soucet = prvni
nejvetsi = prvni # první číslo je zatím největší i nejmenší
nejmensi = prvni
for i in range(pocet - 1): # první už máme, zbývá o jedno míň
cislo = int(input("Zadej číslo: "))
soucet = soucet + cislo
if cislo > nejvetsi:
nejvetsi = cislo
if cislo < nejmensi:
nejmensi = cislo
print("Součet:", soucet)
print("Průměr:", soucet / pocet)
print("Největší:", nejvetsi)
print("Nejmenší:", nejmensi)
Cvičení 4
Soubor: cviceni/04_nasobilkova_tabulka.py
Násobilková tabulka. Pomocí vnořených cyklů vypiš tabulku 4x4, kde na řádku R a sloupci S je jejich součin:
1 2 3 4
2 4 6 8
3 6 9 12
4 8 12 16
Jak pojmenuješ obě proměnné cyklu? Zamysli se, ať dávají smysl.
Zobrazit řešeníSkrýt řešení
for radek in range(1, 5):
for sloupec in range(1, 5):
print(radek * sloupec, end=" ")
print() # po každém řádku skoč na nový řádek
Cvičení 5
Soubor: cviceni/05_hody_dvema_kostkami.py
Hody dvěma kostkami. Vnořenými cykly vypiš všechny možné hody dvěma kostkami (každá má čísla 1 až 6) a u každého i jejich součet. Každý řádek bude vypadat třeba takhle: 2 + 5 = 7
Zobrazit řešeníSkrýt řešení
for kostka1 in range(1, 7):
for kostka2 in range(1, 7):
print(kostka1, "+", kostka2, "=", kostka1 + kostka2)
Zpět na téma: Procházení textu · Další: Bonusová cvičení: Procházení textu

Komentáře
Máš k této stránce dotaz nebo jsi našla chybu? Napiš to sem. Ke komentování je potřeba účet na GitHubu.