7.3.. Napisati program za upis ocjena i ispis uspjeha.
Opis rješenja: Opseg /RANGE/ u SWITCH/CASE neredbi nije satatavni dio standradna C/C** nego njegovo proširenje (GNU C kompajlera).
Opseg vrijednosti u nizu se navodi kao dio jedne labele po santaksi:
case low ... high // sa obaveznim razmakom između vrijednosti i ... !
inače kompajler javlja grešku.
// Ispiravno - case 1 ... 5:
// Pogrešno - case 1...5:
Listing programa:
//07311003
#include <iostream>
using namespace std;
int main()
{
cout << "Za ucitani broj bodova ispisati uspjeh" << endl;
int bb;
cout << "Osvojeno bodova (0 - 100): ";
cin >> bb; // broj bodova
switch (bb) {
case 0 ... 60:
cout << "Nedovoljan" << endl;
break;
case 61 ... 70:
cout << "Dovoljan" << endl;
break;
case 71 ... 80:
cout << "Dobar" << endl;
break;
case 81 ... 90:
cout << "Vrlodobar" << endl;
break;
case 91 ... 100:
cout << "Odlican" << endl;
break;
default:
cout << "Greska" << endl;
}
return 0;
}
II varijanta if else
//07311003
#include <iostream>
using namespace std;
int main()
{
int bb;
bool bPRvi, bDrugi, bTreci;
cout<<"Uspjeh"<<endl;
cin>>bb;
if((bb>=0)&&(bb<=60)){bPRvi=true;}
else if((bb>=61)&&(bb<=70)){bPRvi=false;}
else goto DRUGI_DIO;
switch(bPRvi)
{
case true: cout<<"Nedovoljan"<<endl; cout<<endl; break;
case false: cout<<"Dovoljan"<<endl; cout<<endl; break;
}
DRUGI_DIO:
if((bb>=71)&&(bb<=80)){bDrugi=true;}
else if((bb>=81)&&(bb<=90)){bDrugi=false;}
else goto TRECI_DIO;
switch(bDrugi)
{
case true: cout<<"Dobar"<<endl; cout<<endl; break;
case false: cout<<"Vrlodobar"<<endl; cout<<endl; break;
}
TRECI_DIO:
if((bb>=91)&&(bb<=100)){bTreci=true;}
else bTreci=false;
switch(bTreci)
{
case true: cout<<"Odlican"<<endl; cout<<endl; break;
case false: break;
}
return 0;
}
III varijanta
//07311003
#include <iostream>
using namespace std;
int main()
{
int bb;
cout<<"Uspjeh"<<endl;
cin>>bb;
if ((bb>=0)&&(bb<=60))
{cout<<"Nedovoljan"<<endl; cout<<endl;}
else if ((bb>=61)&&(bb<=70))
{cout<<"Dovoljan"<<endl; cout<<endl;}
else if ((bb>=71)&&(bb<=80))
{cout<<"Dobar"<<endl; cout<<endl;}
else if ((bb>=81)&&(bb<=90))
{cout<<"Vrlodobar"<<endl; cout<<endl;}
else if ((bb>=91)&&(bb<=100))
{cout<<"Odlican"<<endl; cout<<endl;}
return 0;
}
Ispis na ekranu:
Index
|