Napíš programJednoduchá20 XPÚloha 9/16

Číslo v náhodnom čísle

Zadanie

Počítač vygeneruje náhodné číslo z intervalu (100 000 000; 200 000 000) a používateľ zadá číslo, ktoré v ňom chce hľadať. Program vypíše, či sa hľadané číslo nachádza vo vygenerovanom čísle a koľkokrát.

Náhodné číslo sa nedá otestovať porovnaním výstupu, preto program rozdeľ na dve funkcie - testy ich volajú priamo:

  • vygeneruj() vráti náhodné celé číslo z intervalu (100 000 000; 200 000 000) bez krajných hodnôt,
  • pocet_vyskytov(velke, hladane) dostane dve celé čísla a vráti, koľkokrát sa zápis čísla hladane nachádza v zápise čísla velke (výskyty sa neprekrývajú, ako pri metóde count).

Hlavný program je už hotový pod if __name__ == "__main__": - pri testoch sa nespúšťa, ale tlačidlom Spustiť ho vyskúšaš.

Čo má program robiť

pocet_vyskytov(152341523, 15) vráti 2.

Príklady

  • Volanie

    print(pocet_vyskytov(152341523, 15))

    Očakávaný výstup

    2
  • Volanie

    cisla = [vygeneruj() for _ in range(300)]
    print(all(type(c) == int and 100000000 < c < 200000000 for c in cisla))
    print(len(set(cisla)) > 1)

    Očakávaný výstup

    True
    True

Po odoslaní riešenie overia ešte 3 skryté testy: jedna cifra, nenachádza sa, hľadá sa celé číslo.

Python sa spustí pri prvom spustení kódu.

Ctrl+Enter spustí program. Tab odsadí riadok. Esc a potom Tab opustí editor.

Vstup (stdin)

Každý riadok = jedno volanie input().

Výstup

Nápovedy

Najprv to skús sám. Každá nápoveda prezradí o niečo viac - a trochu zníži odmenu.

Bez prihlásenia sú nápovedy zadarmo - ale ani XP sa neudeľujú.

Riešenie

Riešenie sa odomkne po poslednej nápovede.