Podmienený príkaz IF-ELSE zložený


syntax:
if(výraz1)
    príkaz1;
else if(výraz2)
        príkaz2;
     else if(výraz3);
             príkaz3;
          else ...
             príkaz;

Pri vetvení je možné príkazy if else do seba vnárať. Pri vzájomnom vnáraní sa časť else automatický priradí najbližšiemu predchádzajúcemu if. Jedná sa o viaccestné rozhodovanie (prepínač). Výrazy sa vyhodnocujú v uvedenom poradí, pokiaľ sa nenarazí na pravdivý výraz. Potom sa vykoná k nemu prislúchajúci príkaz. Príkaz za posledným else sa vykoná ak žiaden z predchádzajúcich výrazov nebol pravdivý. Môže to byť napríklad chybové hlásenie.


Vzorový príklad:

Napíšte program, ktorý po načítaní 2 čísel vypíše väčšie číslo alebo v prípade že sú rovnaké, tak vypíše že sa rovnajú 

#includ<stdio.h>
int main(void) 
{
  int a,b;

  printf("zadaj prvé číslo a\n");
  scanf("%d",&a);
  printf("zadaj druhé číslo b\n");
  scanf("%d",&b);  

  if (a == b)
    printf("čísla sa rovnajú\n");
  else if (a > b)
    printf("väčšie je prvé číslo\n");
  else printf("väčšie je druhé číslo\n");

  return 0;
}
očakávaný výsledok
očakávaný výsledok

Úloha číslo 1: Napíšte program ktorý vypočíta obvod alebo obsah kruhu. Vstupom je polomer kruhu a možnosť pre obsah a obvod (1,2). 

#include <stdio.h>

int main(void)

{

int r,m;

float obsah,obvod;


printf("zadaj polomer kruhu\n");

scanf("%d",&r);

printf("zadaj či chceš vpočítať obsah(1) alebo obvod(2)\n");

scanf("%d",&m);


if (m == 1)

{

obsah = 3.14*r*r;

printf("obsah sa rovná: %.2f\n",obsah);

}

else if (m == 2)

{

obvod = 2*3.14*r;

printf("obvod sa rovná: %.2f\n",obvod);

}

else printf("nezadal si správnu možnosť\n");


return 0;

}

úloha 1
úloha 1

Úloha číslo 2: Napíšte program, ktorý načíta tri strany trojuholníka a zistí či sa jedná o rôznostranný, rovnoramenný alebo rovnostranný trojuholník.

#include <stdio.h>

int main(void

{

int a,b,c;


printf("zadaj číslo a\n");

scanf("%d",&a);

printf("zadaj číslo b\n");

scanf("%d",&b);

printf("zadaj číslo c\n");

scanf("%d",&c);


if (a == b && b == c)

printf("trojuholník je rovnostranný\n");

else if (a == b || b == c || c == a)

{

printf("trojuholník je rovnoramenný\n");

}

else printf("trojuholník je rôznostranný\n");


return 0;

}

úloha 2
úloha 2

Príklad 3: Napíšte program, ktorý vypočíta kvadratickú rovnicu.  

#include <stdio.h>

#include <math.h>

int main(void

{

int a,b,c;

float D,x1,x2,x;


printf("zadaj číslo a\n");

scanf("%d",&a);

printf("zadaj číslo b\n");

scanf("%d",&b);

printf("zadaj číslo c\n");

scanf("%d",&c);

D = (b*b)-(4*a*c);


if (D > 0)

{

x1 = (-b - sqrt(D))/(2*a);

x2 = (-b + sqrt(D))/(2*a);

printf("výsledky rovnice sú x1 = %f x2 = %f b\n",x1,x2);

}

else if (D == 0)

{

x = (((-b)+sqrt(0))/(2*a));

printf("výsledok rovnice je x = %f\n",x);

}

else printf("rovnica nemá výsledok v R\n");


return 0;

}

úloha 3
úloha 3
Vytvorte si webové stránky zdarma! Táto stránka bola vytvorená pomocou služby Webnode. Vytvorte si vlastný web zdarma ešte dnes! Vytvoriť stránky
Používame cookies, aby sme zaistili správne fungovanie a bezpečnosť našich stránok. Tým vám môžeme poskytnúť tú najlepšiu skúsenosť z ich návštevy.

Pokročilé nastavenia

Tu môžete upraviť svoje preferencie ohľadom cookies. Nasledujúce kategórie môžete povoliť či zakázať a svoj výber uložiť.