Pouze tento týden sleva až 80 % na e-learning týkající se C# .NET. Zároveň využij akci až 30 % zdarma při nákupu e-learningu - Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
C# week + discount 30

Naučte sa myslieť ako programátor II

Opäť sa stretávame u môjho ďalšieho článku s názvom "Naučte sa myslieť ako programátor II". V tomto pokračovaní sa zameriame na tvorbu funkcií (metód). Znovu budete navrhovať banálne algoritmy, ale tentoraz je budete separovať do samostatných funkcií (metód), ktoré budú vracať požadovaný výsledok do "hlavného vlákna" programu. Úlohy opäť pochádza zo školských zdrojov, kedy som sa ešte učil programovať. :-)

  1. Vytvorte funkciu "Signum" (slovensky "Znamienko"). Napíšte program, ktorý prečíta od užívateľa 20 reálnych čísel as pomocou tejto funkcie rozhodne, či bolo viac kladných alebo záporných ao koľko. Pozn. funkcia Signum je funkciou jednej reálnej premennej. Je definovaná tak, že pre kladné vstupné hodnoty dáva výsledok 1, pre záporné -1 a pre nulu je výsledkom 0.
  2. Naprogramujte funkciu pre výpočet n-tej mocniny daného reálneho čísla, kde n je kladné celé číslo. Parametre funkcie budú umocňované číslo a mocnina n. Napíšte program, ktorý od užívateľa načíta reálne číslo xa celé kladné číslo n. S pomocou uvedenej funkcie program spočíta a vypíše x n. Program zabezpečí opakovanie výpočtu, kým to bude užívateľ vyžadovať.
  3. Zapíšte funkciu, ktorá na základe karteziánskych súradníc dvoch bodov v rovine spočíta ich vzdialenosť. S pomocou tejto funkcie vytvorte program, ktorý zo vstupu prečíta súradnice vrcholov trojuholníka v rovine a spočíta jeho obvod.
  4. Zapíšte funkciu, ktorá zisťuje, či je kladné celé číslo prvočíslo. S pomocou tejto funkcie napíšte program, ktorý vypíše na obrazovku všetky prvočísla menšie ako užívateľom zadané číslo.
  5. Napíšte funkcie na výpočet najväčšieho spoločného deliteľa daných dvoch čísel. Napíšte program, ktorý s použitím tejto funkcie prevedie daný zlomok na základný tvar. Zlomok je odovzdávaný ako dvojica celých čísel predstavujúcich jeho čitateľa a menovateľa.
  6. Napíšte funkciu na výpočet najmenšieho spoločného násobku dvoch daných celých čísel. Napíšte program, ktorý s pomocou tejto funkcie vypočíta súčet dvoch zlomkov. Každý zlomok je odovzdávaný ako dvojica celých čísel predstavujúcich jeho čitateľa a menovateľa.
  7. Napíšte funkciu, ktorá na požadované súradnice na obrazovke vypíše zadaný text požadovanou farbou. S pomocou tejto funkcie vytvorte program, ktorý na 50 náhodne vygenerovaných miest na obrazovke vypíše text "AHOJ!" Náhodnými farbami.
  8. Vytvorte funkciu, ktorá zisťuje, či je daný rok priestupný. S pomocou tejto funkcie napíšte program, ktorý na základe čísla roka a poradového čísla dňa v roku spočíta a vypíše dátum v tvare "deň.mesiac.rok".
  9. Vytvorte funkciu na výpočet faktoriálu z daného čísla. (n! = n (n-1) (n-2) * ... 3 2 * 1). S pomocou tejto funkcie vytvorte funkciu, ktorá spočíta kombinačné číslo "n nad k". Napíšte program, ktorý načíta od užívateľa 2 čísla xaya spočíta "x nad y".
  10. Napíšte funkciu, ktorá vypočíta ciferný súčet daného čísla. Vytvorte program, ktorý s pomocou tejto funkcie vypíše všetky trojciferné s čísla s ciferným súčtom väčším ako 20.
  11. Napíšte funkciu, ktorá prevedie dané číslo z desiatkovej sústavy do dvojkovej. Vytvorte program, ktorý s pomocou tejto funkcie vypíše prehľadne všetky čísla od nuly do 32 vždy v dvojkovej, desiatkovej a šestnástkovej sústave.
  12. Prirodzené číslo sa nazýva dokonalé, ak je rovné súčtu všetkých svojich deliteľov okrem seba samého. Napríklad 6 je dokonalé číslo, lebo 6 = 1 + 2 + 3. Napíšte funkciu, ktorá rozhodne, či je alebo nie je zadané číslo dokonalé. S pomocou tejto funkcie napíšte program, ktorý vytlačí všetky dokonalá čísla menšie ako užívateľom zadané N.
  13. Napíšte funkciu, ktorá prevádza malé písmená anglickej abecedy na veľká. Ak zadáme tejto funkcii ako hodnotu parametra iný znak ako malé písmeno, funkcia ho ponechá bezo zmien. S pomocou tejto funkcie napíšte program, ktorý prečíta od užívateľa jednu vetu a vypíše jej veľkými písmenami.
  14. Napíšte funkciu, ktorá prehľadne vypíše násobilku až do zadaného čísla n. S pomocou tejto funkcie vytvorte program, ktorý obrazovku vypíše násobilku až do užívateľom požadovaného čísla.
  15. Napíšte funkciu, ktorá vypočíta počet dní, ktorý uplynie medzi dvoma dátumami, ktoré budú funkciu odovzdaná ako parametre (vyberte sami vhodný počet a význam parametrov). S pomocou tejto funkcie napíšte program, ktorý vypíše počet dní medzi užívateľom zadanými dátami (opäť zvoľte vhodný spôsob zadávania dát).
  16. Napíšte funkciu, ktorá vypočíta počet sekúnd, ktoré uplynú medzi dvoma časmi, ktoré budú funkciu odovzdané ako parametre (vyberte sami vhodný počet a význam parametrov). S pomocou tejto funkcie napíšte program, ktorý vypíše počet sekúnd medzi užívateľom zadanými časmi (opäť zvoľte vhodný spôsob zadávania dát).
  17. Napíšte funkciu, ktorá podľa zadaného dátumu narodenia a pohlavie určí prvých 6 číslic z rodného čísla.
  18. Napíšte funkciu, ktorá overí, či je zadané rodné číslo prípustné. V prípade že áno, funkcia vráti deň, mesiac aj rok narodenia a správne pohlavie príslušné k rodnému číslu.
  19. Napíšte funkciu, ktorá prevedie karteziánske súradnice v rovine na polárnej.

 

Všetky články v sekcii
Česká encyklopédia algoritmov
Preskočiť článok
(neodporúčame)
Online test znalostí algoritmizácia
Článok pre vás napísal Mediel
Avatar
Užívateľské hodnotenie:
Ešte nikto nehodnotil, buď prvý!
Autor se věnuje programování v C#, ThaiBoxu, ženám a posilování :) „Jestliže si vsugerujete neúspěch, pak vás čeká neúspěch. Někdo říká, že je nesmělý, hloupý. Zopakujte si to desetkrát za sebou a vaše nesmělost a hloupost se tím jen prohloubí.“ MUHAMMAD
Aktivity

 

 

Komentáre

Avatar
Honza Bittner
Tvůrce
Avatar
Honza Bittner:14.5.2014 12:36

Podle mě dobré procvičení do každého jazyka.
Hlavně tedy pro začínající, které to nutí přemýšlet jak to udělat co nejjednodušeji. :)

Odpovedať
14.5.2014 12:36
Absolvent FIT ČVUT :-) Sleduj mě na https://twitter.com/tenhobi a ptej se na cokoli na https://github.com/tenhobi/ama.
Avatar
Daniel Toráč:27.3.2020 21:34

Ahojte, skusal som ulohu 1 cez mobil kde v pythone mi nefunguje vstup, tak som pole deklaroval. Posielam ukazku :);

Odpovedať
27.3.2020 21:34
"Nie to čo mám, ale to, čo viem, je mojím bohatstvom." Thomas Carlyle
Robíme čo je v našich silách, aby bola tunajšia diskusia čo najkvalitnejšia. Preto do nej tiež môžu prispievať len registrovaní členovia. Pre zapojenie sa do diskusie sa zaloguj. Ak ešte nemáš účet, zaregistruj sa, je to zadarmo.

Zobrazené 2 správy z 2.