Vstupy a výstupy
V tejto kapitole si predstavíme dva nové príkazy: 1. Printf
2. Scanf
Printf – je to príkaz ktorý nám vypíše text ktorý chceme na obrazovku jeho syntx vyzerá takto:
printf("Text");
pre vypísanie hodnoty uloženej v nejakej premennej potrebujeme pridať do textu pár vecí.
Riadiaca sekvencia znakov |
význam |
\n |
prechod na nový riadok |
\t |
tabulátor |
\\ |
lomka |
\” |
úvodzovky |
Dátový typ |
znak |
Celé číslo |
%d |
Reálne číslo |
%f |
Znak |
%c |
Príklad:
deklarujeme premennú znak typu char, i typu int a f typu float následne do nich uložme hodnoty: a, 8, 12.5 a dajme ich vypísať .
#include <stdio.h>
int main()
{
char znak;
int i;
float f;
znak = 'a';
i = 8;
f = 12.25;
printf(" %c \n %d \n %f \n ", znak, i, f);
}

Ak by sme chceli naše desatinné číslo vypísať len na dve desatiny tak nám stačí len dopísať .2 medzi % a f
-> vyzeralo by to takto: %.2f

Ako sme si už v minulej kapitole povedali každý dátový typ ma svoju veľkosť v bitoch a však nie vždy si ju pamätáme. Preto si predstavíme príkaz ktorý nám to vie zistiť. tento príkaz sa vola sizeof.
-> syntax sizeof(typ premennej)
Príklad:
#include <stdio.h>
int main()
{
printf("veľkosť typu int je: %d\n ", sizeof(int));
}

Avšak treba si dávať pozor lebo ako sme si mohli všimnúť tak nám vypísalo iné číslo ako máme v tabuľke z predchádzajúcej lekcie. Je to preto lebo v tabuľke máme túto veľkosť v bitoch zatiaľ čo tu nám ju vypísalo v bajtoch. 1 bajt má 8 bitov tým pádom náš integer ma 4 × 8bitov čo je 32 bitov ako v našej tabuľke.
Úloha číslo 1: Napíšte program ktorý zistí a vypíše veľkosť všetkých dátových typov: char, int, shortint, longint, float, double
#include <stdio.h>
int main()
{
printf(" velkost typu char je: %d\n velkost typu int je: %d\n velkost typu short int je: %d\n velkost typu long int je: %d\n velkost typu float je: %d\n velkost typu double je: %d\n ", sizeof(char), sizeof(int), sizeof(short int), sizeof(long int), sizeof(float), sizeof(double));
}

Úloha číslo 2: Napíšte program na výpočet obvodu a obsahu obdĺžnika ak strana a=20 a strana b=30
#include <stdio.h>
int main()
{
int a, b, o, S;
a = 20;
b = 30;
o = 2 * (a + b);
S = a * b;
printf("Obsah = %d\nObvod = %d", S, o);
return 0;
}

Úloha číslo 3: Napíšte program na výpočet polomeru kružnice ak poznáme jej obvod ktorý bude predom zadefinovaný ako o=31.41
#include <stdio.h>
int main()
{
float o, r;
o = 31.41;
r = o/(2*3.14);
printf("polomer = %.2f", r);
return 0;
}

Scanf - je príkaz ktorý nám načíta z klávesnice znak do premennej jeho syntax vyzerá takto:
scanf("typ premennej (%d, %f, %c)", &premenná do ktorej to chceme uložiť);
napríklad ak by som chcel načítať celé číslo do premennej x tak by to vyzeralo takto
scanf("%d",&x);
Príklad:
Napíšte program ktorý načíta z klávesnice: znak, cele číslo a desatinne číslo. Potom ich dajte vypísať na obrazovku.
#include <stdio.h>
int main()
{
int i;
float f;
char a;
printf("zadaj znak z klavesnice: ");
scanf("%c", &a);
printf("zadaj cele cislo z klavesnice: ");
scanf("%d", &i);
printf("zadaj desatine cislo z klavesnice: ");
scanf("%f", &f);
printf("z klavesnice sme nacitali:\n cele znak: %c\n cele cislo: %d\n destaine cislo: %f", a, i, f);
}

Úloha 1: Napíšte program ktorý načíta 2 desatinné čísla a jedno vypíše na 2 desatinné miesta a druhé na 3 desatinné miesta
#include <stdio.h>
int main()
{
float a,b;
printf("zadaj prvé desatinné číslo z klávesnice: ");
scanf("%f", &a);
printf("zadaj druhé desatinné číslo z klávesnice: ");
scanf("%f", &b);
printf("prvé desatinné číslo je: %.2f\nDruhé desatinné číslo je %.3f", a, b);
}

Úloh číslo 2: Napíšte program na výpočet obvodu a obsahu obdĺžnika ak veľkosť strán načítame z klávesnice
#include <stdio.h>
int main()
{
int a, b, o, S;
printf("zadaj dĺžku obdĺžnika");
scanf("%d", &a);
printf("zadaj šírku obdĺžnika");
scanf("%d", &b);
o = 2 * (a + b);
S = a * b;
printf("Obsah = %d", S);
return 0;
}

Úloh číslo 3: Napíšte program na výpočet zvyšku po delení ak delenca a deliteľa zadávame z klávesnice
#include <stdio.h>
int main()
{
int a, b, d;
printf("zadaj delenca ");
scanf("%d", &a);
printf("zadaj deliteľa ");
scanf("%d", &b);
d = a % b;
printf("Zvyšok po delení = %d", d);
return 0;
}
