Mam problem z programem, który napisałem ostatnio (Program oblicza średnią arytmetyczną ocen). Otóż ograniczyłem już wpisywanie liczb większych niż 6 ale kiedy wpiszę jakąś literę wyświetla się w nieskończoność jakiś napis. Nie wiem, jak zablokować wpisywanie znaków i wyrazów (żeby program zwracał błąd za każdym razem, kiedy podajemy zmienną inną, niż liczba 0 - 6 (0 kończy wpisywanie). Oto kod programu. Nieudane próby wziąłem w komentarz (Piszę w Dev-C++)
#include
#include
#include "console.ddt"
using namespace ddt::console;
using namespace std;
int main()
{
int kolorTla=10;//min wartosc=0; max wartosc=15;
int kolorTekstu=12;//min wartosc=0; max wartosc=15;
ddt::console::textattr(kolorTla*16+kolorTekstu);
int ilosc=0;
float srednia=0;
float ocena;
//char wyraz; //zmienna wykluczona z programu, gdyz nie jest ona potrzebna
cout<<"By Victim"<
cout<
do
{
cout<<"Podaj ocene (0 konczy wprowadzanie): ";
cin>>ocena;
/*if(wyraz)
{
cout<
cout<
cout<
cout<
getch();
return(0);
}*/ //Ten fragment wykluczylem z powodu bledow w wykonywaniu funkcji
if(ocena>6)
{
cout<
cout<
cout<
cout<
getch();
return(0);
}/*else
{
continue; //wykluczony z powodu braku obliczen sredniej
}*/
if(ocena>0)
{
srednia+=ocena;
ilosc+=1;
}
}while(ocena!=0);
if(ilosc>0) srednia/=ilosc;
if(ilosc==0)
{
cout<
cout<
cout<
cout<
getch();
return(0);
}
cout<
cout<
cout<<"Wcisnij dowolny klawisz aby zakonczyc."<
cout<<"v0.4.4 BETA."<
cout<
getch();
return(0);
}
Proszę o pomoc w napisaniu jakiejś blokady przed wpisaniem liter i wyrazów do zmiennych.