Základy

Obvod a obsah obdélníku

Program vypočítá a vypíše obvod a obsah obdélníku ze dvou celočíselných velikosti stran \( a \), \( b \) podle známých vzorců.

a b
$$\begin{aligned} o &= 2 \cdot (a + b) \\ S &= a \cdot b \end{aligned}$$
Výstup
a = 200
b = 100
o = 600
S = 20000

Obsah vyšrafované plochy

Ze zadané délky strany čtverce \( a \) a průměru kružnice \( d \) vypočítáme obsah vyšrafované plochy. Výpočet budeme provádět pomocí datového typu float s využitím konstanty M_PI z knihovny <math.h>. Druhou mocninu vypočítáme násobením, ale také pomocí funkce pow . Při použití matematických funkcí je nutné program linkovat s knihovnou math10. Výsledek zapíšeme na výstup na 4 desetinná místa.

10Pro překlad s touto knihovnou použijte -lm:

$ gcc obsah.c -o obsah -lm
a a r
$$ S_{kruh} = \frac{\pi \cdot d^2}{4} $$
Výstup
a = 8
r = 4
S = 50.27

Prohození dvou čísel

Pomocí dočasné proměnné provedeme prohození čísel ve dvou proměnných.

Výstup
a = 10
b = 50

a = 50
b = 10

Maximum ze tří čísel

Ze tří čísel nalezneme maximum.

Výstup
a = 10
b = 40
c = 20

maximum je 40

Výpis sudých čísel

Vypište sudá čísla od 0 do 100 (včetně).

FizzBuzz

Naimplementujte FizzBuzz1. Vypište čísla 1 až 100 tak, že:

1Tento program často bývá obsahem interview programátorů ve firmách.

  • pokud je číslo násobkem 3, tak vypište místo čísla Fizz
  • pokud je číslo násobkem 5, tak vypište místo čísla Buzz
  • pokud je číslo násobkem 3 i násobkem 5, tak vypíše místo čísla FizzBuzz
Výstup programu
1
2
Fizz
4
Buzz
Fizz
7
8
Fizz
Buzz
11
Fizz
13
14
Fizz Buzz
16
...

Složitější varianta: Naimplementujte tento program bez použití podmínek. Nesimulujte ani podmínku žádným cyklem. Použijte jediný cyklus for pro průchod čísly 1 až 100 a uvnitř tohoto cyklu nepoužijte žádnou podmínku.

Fibonacciho číslo

Napište funkci, která vypočte n-té Fibonacciho číslo (n bude parametrem funkce).

Výstup funkce
fibonacci(0);   // 0
fibonacci(1);   // 1
fibonacci(2);   // 1
fibonacci(3);   // 2
fibonacci(4);   // 3
fibonacci(5);   // 5
fibonacci(6);   // 8

Faktoriál

Napište funkci, která vypočte faktoriál předaného parametru.

Výstup funkce
factorial(0);   // 1
factorial(1);   // 1
factorial(4);   // 24
factorial(5);   // 120

Textové kreslení obrazců

Vykreslete následující obrazce. Napište program tak, aby počet řádků, na který se obrazec vykreslí, byl konfigurovatelný, tj. pro změnu počtu řádků by mělo stačit změnit jediný řádek (jedinou proměnnou).

Vyplněný čtverec
xxxx
xxxx
xxxx
xxxx
Nevyplněný čtverec
xxxx
x  x
x  x
xxxx
Čtverec vyplněný rostoucími čísly
xxxxx
x012x
x345x
x678x
xxxxx
Diagonála
x
 x
  x
   x
    x
Trojúhelník
  x  
 x x 
xxxxx
Písmeno Z
xxxxxx
    x 
   x  
  x 
 x
xxxxxx

Načítání PINu

Načtěte od uživatele PIN (4 číslice). Poté opakovaně vyzývejte uživatele k zadání PINu. Pokud uživatel zadá 3x nesprávný PIN, vypište chybovou hlášku a ukončete program.