Nie będę podawał całego polecenia, powiem tylko w czym mam problem. Otóż po uruchomieniu programu i np.wybraniu opcji 3,a następnie 7 pokazuję się napis: skacze do gory1. Jak wyeliminować to 1 z napisu ? Dzięki.
#include <iostream>
using namespace std;
bool w_prawo();
bool w_lewo();
bool w_gore();
bool w_dol();
bool machanie_reka();
bool machanie_noga();
int main()
{
bool (*wsk[20])();
int co;
while(1)
{
Menu:
cout << "Menu:\n"
"1.Ruch w prawo\n"
"2.Ruch w lewo\n"
"3.Ruch do gory\n"
"4.Ruch w dol\n"
"5.Machanie reka\n"
"6.Machanie noga\n"
"7.Wykonaj ruchy\n"
"9.Wyjscie\n";
for(int i = 0; ; i++)
{
cout << "Podaj liczby z menu: ";
cin >> co;
switch(co)
{
case 1:
wsk[i] = &w_prawo;
break;
case 2:
wsk[i] = &w_lewo;
break;
case 3:
wsk[i] = &w_gore;
break;
case 4:
wsk[i] = &w_dol;
break;
case 5:
wsk[i] = &machanie_reka;
break;
case 6:
wsk[i] = &machanie_noga;
break;
case 7:
for(int n = 0; n < i; n++)
{
cout << wsk[n]() << endl;
}
i = 0;
goto Menu;
case 9:
exit(1);
break;
default:
cout << "Nie ma takiej opcji!";
i--;
break;
}
}
}
}
bool w_prawo()
{
int ile;
cout << "Ile razy mam isc w prawo ?\nTwoja odpowiedz to: ";
cin >> ile;
for(int i = 0; i < ile; i++)
{
cout << "Obrot ramienia w prawo";
}
return true;
}
bool w_lewo()
{
cout << "Obrot ramienia w lewo";
return true;
}
bool w_gore()
{
cout << "Skacze do gory";
return true;
}
bool w_dol()
{
cout << "Schodze w dol";
return true;
}
bool machanie_reka()
{
cout << "Macham reka";
return true;
}
bool machanie_noga()
{
cout << "Machanie noga";
return true;
}