Hej, jako, że dopiero uczę się programowania program jest związany z zadaniem. Wszystko działa pięknie i ładnie i właściwie zrobiłem wszystko zgodnie z treścią. Postanowiłem dodatkowo zabezpieczyć program przed wpisywaniem liter, jednak wszelkie próby skończyły się fiaskiem. Zarówno kompilator visuala jak i codeblocksa nie kompilują tak jakbym chciał więc coś z mojej winy musi być ^^ Próbowałem też z isdigit() oraz innymi dziwnymi metodami podawanymi na internetach, a aktualnie stoję na czymś takim. Ktoś będzie w stanie coś podpowiedzieć?
//#include "stdafx.h"
#include <iostream>
#include <cstring>
#include <cctype>
#include <climits>
void menu();
void roslina();
void pianista();
void drzewo();
void gra();
using namespace std;
int main()
{
menu();
int wybor;
while (!(cin >> wybor) && wybor > 5 && wybor < 1)
{
cin.clear();
cin.sync();
cout << "Podaj liczbe z przedzialu 1-4!: ";
}
while(wybor != 5)
{
switch (wybor)
{
case 1 : roslina();
break;
case 2 : pianista();
break;
case 3 : drzewo();
break;
case 4 : gra();
break;
default:
cout << "Nie lubie takiego wyboru!";
}
cout << endl;
menu();
while (!(cin >> wybor) && wybor > 5 && wybor < 1)
{
cin.clear();
cin.sync();
cout << "Podaj liczbe z przedzialu 1-4!: ";
}
}
return 0;
}
void menu()
{
cout << "Wybierz opcje z listy ponizej wpisując numer" << endl;
cout << "1) Roslina\n";
cout << "2) Pianista\n";
cout << "3) Drzewo\n";
cout << "4) Gra\n";
cout << "5) Wyjdz\n";
}
void roslina()
{
cout << "Jestes roslina!";
}
void pianista()
{
cout << "I tak nie umiesz grac...";
}
void drzewo()
{
cout << "Nie, to akurat jest sciana - przyznaj sie co brales?!";
}
void gra()
{
cout << "Przegrales!";
}