Interaktívna osnova pre IB001/10 a IB001/11

Týden 3

Prebrali sme:

  • premenné, typ int, double, char,
  • operátory, priradenie, pretypovanie,
  • načítavanie cez scanf

Príklady

  • načítanie celočíselných premenných a výmena hodnôt premenných

int i,j;

printf("Zadaj prve cislo: ");

scanf("%d", &i);

printf("Zadaj druhe cislo: ");

scanf("%d", &j);

printf("pred vymenou sa i=%d a j=%j\n", i, j);

//vymenime obsah premennych i a j pomocou tretej pomocnej premennej

int z = i;

i=j;

j=z;

printf("po vymene sa i=%d a j=%d\n", i, j);

 

  • operátory ++, priradenie

int i = 5;

int j = 8;

printf("i=%d a j=%d\n", i, j);

int k = i++;

printf("k=%d a i=%d\n", k, i);

int l = ++j;

printf("l=%d a j=%d\n", l, j);

i += l;

printf("i=%d a l=%d\n", i, l);

 

  • domáca úloha 1:

Z vstupu načítajte znak, predpokladajte, že je to znak z malej abecedy, napr. k. Tento znak premeňte na korešpondujúci znak veľkej abecedy, teda K a ten vypíšte. Spomeňte si, že znaky sú reprezentované ako čísla a v ASCII tabuľke zistite súvislosť medzi číselnu reprezentáciou znakov malej a veľkej abecedy.
 

char pismeno;

scanf("%c", &pismeno);

printf("znak z velkej abecedy zodpovedajuci nacitanemu pismenu %c je %c\n",pismeno, pismeno + ('A'-'a'));

 

  • domáca úloha 2

Načítajte čas vo formáte hodiny:minúty. Potom načítajte počet minút a vypíšte čas posunutý o tento počet minút, napr.pre vstup 12:30 a 45 vypíše 13:15, pre vstup 22:45 a 98 vypíše 00:23.

 

int hodiny, minuty;

printf("zadaj cas vo formate hh:mm\n");

scanf("%02d:%02d", &hodiny, &minuty);

printf("zadaj kolko minut sa ma pripocitat: ");

int pripocitaj;

scanf("%d\n", &pripocitaj);

int noveHodiny, noveMinuty;

noveHodiny = (hodiny + pripocitaj/60) %24;

noveMinuty = minuty + pripocitaj%60;

printf("novy cas je %02d:%02d", noveHodiny, noveMinuty);