7.3.. Napisati program za ispis uspjeha, prema slijedeæoj tabeli:
Opis programa: Da bi se mogla koristi naredba CASE vrijednosti moraju biti cjelobrojne.
ibb = (int) (bb + 0.5);
Zato se prosjeku dodaje 0.5 i zatim odbacuju decimalna mjesta.
Opseg |
Ispis |
Dodano 0.5 (bb + 0.5) |
Cio broj sa 0.5 (int) (bb + 0.5); |
0 - 1.4 |
nedovoljan |
0.5 - 1.9 |
0 -1 |
1.5 - 2.4 |
dovoljan |
2.0 - 2.9 |
2 - 2 |
2.5 - 3.4 |
dobar |
3.0 - 3.9 |
3 - 3 |
3.5 - 4.4 |
vrlo dobar |
4.0 - 4.9 |
4 - 4 |
4.5 - 5.0 |
odlican |
5.0 - 5.0 |
5 - 5 |
Listing programa:
//07311007
#include <stdio.h>
int main() {
float bb;
int ibb;
printf("Uspjeh: ");
scanf("%f",&bb);
ibb = (int) (bb + 0.5); // dodaj 0.5 i odbaci decimalna mjesta
switch(ibb) {
case 0 ... 1:
printf("Nedovoljan\n");
break;
case 2:
printf("Dovoljan\n");
break;
case 3:
printf("Dobar\n");
break;
case 4:
printf("Vrlodobar\n");
break;
case 5:
printf("Odlican\n");
break;
default:
printf("Nevalidan unos\n");
break;
}
return 0;
}
II varijanta sa if-else
//07311007
#include <stdio.h>
int main(){
double a;
printf("Ocjena-Prosjek\nProsjek:\n");
scanf("%lf",&a);
if ((a>=0)&&(a<=1.4))
{
printf("Nedovoljan\n");
}
else if ((a>=1.5)&&(a<=2.4))
{
printf("Dovoljan\n");
}
else if ((a>=2.5)&&(a<=3.4))
{
printf("Dobar\n");
}
else if ((a>=3.5)&&(a<=4.4))
{
printf("Vrlodobar\n");
}
else if ((a>=4.5)&&(a<=5))
{
printf("Odlican\n");
}
else{
printf("Nevalidan unos\n");
}
return 0;
}
Ispis na ekranu:
Index
|