Jednoduchá konzolová aplikace

Vytvořte moduly pro formátovaný tisk tabulek (podle následujících dvou bodů zadání). K prezentaci činnosti těchto dvou funkcí vytvořte projekt, který bude mít dva moduly (soubory *.c). První modul bude obsahovat funkci main a ve druhém budou funkce realizující formátovaný tisk tabulek. Pro tisk preferujte funkce jazyka C (rodinu printf, scanf).

Pro formátovaný tisk tabulek použijte následující dvě funkce, které budete volat z funkce main (propojení modulů realizujte pomocí souboru typu *.h).



funkce 1. - násobilka

Vytvořte funkci nasobilka, která na obrazovku vytiskne tabulku násobilky pro tento rozsah násobitelů : první 10-20 druhý 40-50). V prvním řádku a sloupci jsou uvedeny operandy, v tabulce je příslušný výsledek odpovídající násobení těchto operandů. Sloupce v tabulce oddělte a zarovnejte (poslední číslice sloupců budou pod sebou).

  T |  10  11  12  13 ...  20
---------------------------------------------------
 40 | 400 440 480 520 ... 800
 41 | 410 451 492 533 ... 820
. . .
 50 | 500 550 600 650 ...1000


funkce 2. - formátovaný výstup

Pomocí funce Tiskni vytiskněte tabulku funkce cosinus*sinus (od -180 do 180 stupňů) pro zadanou amplitudu a daný počet hodnot. Amplitudu a počet hodnot načtěte z klávesnice a předejte jako parametry funkci. Tisk tabulky realizujte jako dva sloupce: první je úhel (ve stupních na dvě desetinná místa) a druhý jsou hodnoty funkce „Amplituda * cosinus(uhel) * sinus(uhel)“. Úhly jsou rovnoměrně odvozeny pro zadaný počet hodnot v intervalu od -180 do 180. Snažte se, aby tabulka byla zarovnána (desetinné tečky pod sebou) pro všechny velikosti amplitud a kroků. (Amplitudu zkuste např. 0.0001 nebo 10000).





Pozn.: (u KPPC nepatří následující k bodované části DU – není součástí odevzdání)

Při tvorbě projektu si zkuste funkce všech tlačítek a položek menu prostředí (viz návod). Vyzkoušejte si především možnosti trasování a zobrazování hodnot proměnných.

Před projektem si proveďte rozbor řešení a zvolené řešení si cvičně naskicujte na papír (volání funkcí, blokové schema činnosti funkce, možné zadání a z nich plynoucí problémy při realizaci, ošetření chybných vstupů ...)

Vyzkoušejte přepracovat předchozí příklady na výstup do souboru. Uvažujte možnost výběru tisku do souboru nebo na konzolu v závislosti na tom, zdali je na příkazovém řádku název souboru.
Řešení – v případě, že je na příkazovém řádku více než jeden parametr (počet a znění parametrů jsou parametry funkce main) je druhý parametr název souboru. Zkuste tento soubor otevřít. V případě, že se otevření povede bude se dále pracovat s touto proměnnou, jinak použijeme standardní stream – stdout (či pro vstup stdin). Příkazy printf (scanf) je nutné přepsat na fprintf (fscanf), kde přibude jako první parametr otevřený stream. Nesmíme zapomenou uzavřít nakonec stream v případě, že byl otevřen výstup do souboru.

Vstup a výstup z/do souboru je možný realizovat i jednodušeji přesměrováním ve volání exe souboru. Při volání z „dosové“ řádku je možné přesměrovat výstup do souboru následně “tabulka.exe > vystup.txt“. Vstup ze souboru je možný pomocí “tabulka.exe < vstup.txt“.









Poslední změna 2009-09-23