Naredba switch-case

Naredba switch-case omogućava jednostruko grananje koje zavisi od vrednosti postavljenog uslova.

Za razliku od višestrukog uslovnog grananja kod kojeg su uslovi logički izrazi, u naredbi switch-case uslov je celobrojni izraz ili celobrojna promenljiva. Vtrdnost cjelobrojnog izraza ili vrednost cjelobrojne promenljive je ceo  broj.

  • Vridnost uslova se uporedjuje sa nizom datih celobrojnih konstanti: konst1, konst2, konst3, itd. Ako je vrednost uslova jednaka nekoj od zadatih konstanti, izvršava se blok naredbi pridružen toj konstanti.
  • Po završetku izvršenog bloka, naredba break prekida izvršavanje switch-case bloka naredbi i nastavlja program prvom naredbom nakon switch‑case bloka.
  • Ako vrednost uslova nije jednak niti jednoj od ponuđenih konstanti, izvršava se blok naredbi pridružen naredbi default. U slučaju izostavljanja naredbe default program će nastaviti izvršavanje prvom naredbom nakon switch‑case bloka.

Celokupni switch‑case blok zapisuje se unutar para otvorena-zatvorena vitičasta zagrada ({}).

 Pr1: Napravi program koji na osnovu broja koji unosiš preko tastature izdaje dan u nedelji?
Rešenje:
#include <iostream>
#include <stdlib.h>

using namespace std;

int main()
{
int broj;
cout<<„Unesi broj od 1-7″<<endl;
cin>>broj;
switch (broj)
{
case 1:
cout << „Ponedeljak“ << endl;
break;
case 2:
cout << „Utorak“ << endl;
break;
case 3:
cout << „Sreda“ << endl;
break;
case 4:
cout << „Cetvrtak“ << endl;
break;
case 5:
cout << „Petak“ << endl;
break;
case 6:
cout << „Subota“ << endl;
break;
case 7:
cout << „Nedelja“ << endl;
break;
default:
cout << „Nedelja ima 7 dana!“ << endl;
}
system(„PAUSE“);
return 0;
}

Pr 2. Napravi program koji za unetu ocenu izdaje opisan oblik iste?
Rešenje:
#include <iostream>
using namespace std;
int main()
{
int ocena;
cin >> ocena;
switch (ocena)
{
case 1:
cout << "Nedovoljan (1)" << endl;
break;
case 2:
cout << "Dovoljan (2)" << endl;
break;
case 3:
cout << "Dobar (3)" << endl;
break;
case 4:
cout << "Vrlo dobar  (4)" << endl;
break;
case 5:
cout << "Odlican (5)" << endl;
break;
default:
cout << "Ne zezaj. Vakva ocena nema." << endl;
}
return 0;
}
Advertisements

Ostavite odgovor

Popunite detalje ispod ili pritisnite na ikonicu da biste se prijavili:

WordPress.com logo

Komentarišet koristeći svoj WordPress.com nalog. Odjavite se /  Promeni )

Google+ photo

Komentarišet koristeći svoj Google+ nalog. Odjavite se /  Promeni )

Slika na Tviteru

Komentarišet koristeći svoj Twitter nalog. Odjavite se /  Promeni )

Fejsbukova fotografija

Komentarišet koristeći svoj Facebook nalog. Odjavite se /  Promeni )

Povezivanje sa %s