Termín odevzdání | 29.10.2023 7:00 |
Bodový zisk | 2+2b |
Počet uploadů | 10 |
Typ zadání | povinné |
Tyto úloha slouží k procvičení formátovaného vstupu a výstupu s použitím funkcí scanf
() a printf
(). Podobně jako ostatní domácí úkoly, vždy je dostačující znalost témat z předchozích přednášek a cvičení, tj. není nutné (a mnohdy ani vhodné) pro povinné a volitelné zádání používat pokročilé programové konstrukty.
Pro získání dat ze standardního vstupu se v C typicky používá funkce scanf()
. Její použití nemusí být zejména pro začátečníky úplně pochopitelné. Zkuste si projít řešené příklady včetně videoukázek: 2 - Standardní vstup a výstup
V tomto domácím úkolu je možné využít jednoduchou funkci, definovanou v hlavičkovém souboru getint.h
. Načtení dvou čísel typu int
lze provést následujími způsoby:
#include <stdio.h>
int main()
{
int a, b;
scanf ("%i", &a);
scanf ("%i", &b);
printf ("a = %i, b = %i\n", a, b);
return 0;
}
#include "getint.h"
int main()
{
int a, b;
a = getint();
b = getint();
printf ("a = %i, b = %i\n", a, b);
return 0;
}
Pokud se rozhodnete využit v tomto domácím úkolu funkci getint()
, je třeba mít příslušný hlavičkový soubor ve stejném adresáři, jako překládaný hlavní soubor. Hlavičkový soubor nedávejte do zip balíčku, který nahráváte na server.
V dalších domácích úkolech tento přístup využít nelze.
Abchom vám ulehčili práci, tak jsme pro vás připravili balíčky hw02a_-_vstup_vystup.zip a hw02b_diskriminant.zip, které obsahují všechny veřejné testovací vstupy a jejich očekávané výstupy. Dále archivy obsahují jednoduchý Makefile
, díky kterému můžete kompilovat program jednoduše pomocí příkazu make
a vytvořit archiv pro odevzdávací systém pomocí příkazu make zip
(vytvoří se archiv hw02-us.zip).
Na konci každého řádku je symbol nového řádku ('\n').
Pro kontrolu můžete uložit standardní výstup programu do souboru a zobrazit jej v hexadecimálním tvaru pomocí příkazu hexdump -C
Pokud si nejste jisti, jak správně použít funkci scanf()
, je v HW02 možné využit alternativní funkci getint()
, která je definována v přiloženém hlavičkovém souboru.
Veřejné příklady + Makefile: hw02_-_vstup_vystup.zip hw02b_diskriminant.zip
| Zadání |
Název v BRUTE | HW02a, HW02b |
Odevzdávané soubory | main.c |
Argumenty při spuštění | žádné |
Kompilace pomocí | clang -pedantic -Wall -std=c99 -O2 |
Procvičované oblasti | standardní vstup a výstup |