Witam. Jestem świeżo po opracowaniu symfonii c++ standard. Jako swój pierwszy program postanowiłem napisać coś tak "banalnego" jak kalkulator. Chciałbym go zrobić w oparciu o klasy, jeszcze co prawda nie OO, ale od czegoś trzeba zacząć. Problem pojawił się na samym początku ponieważ tak jak w każdym kalkulatorze chciałbym aby użytkownik mógł wybrać ile miejsc po przecinku ma się pojawić przy wykonywaniu działań. Obecny mój kod wygląda następująco:
#include <iostream>
using namespace std;
int main()
{
int czy_liczba;
bool koniec = true;
while(koniec == true)
{
cout << "Wpis k aby zakonczyc program: " << endl;
cout << "Ile zer ma byc po przecinku" << endl;
cout << "do wyboru 0, 2, 3, 4: ";
czy_liczba = cin.peek();
if(isdigit(czy_liczba))
{
int ile_zer;
cin >> ile_zer;
cout << "Ustawiono " << ile_zer << " miejsc po przecinku." << endl;
}
else
{
cout << "To byl znak";
koniec = false;
}
}
}
Problem pojawia się przy użyciu pętli. Chciałbym aby program w razie gdy z klawiatury zostanie podany jakiś znak przeszedł do instrukcji else. I tak robi. Lecz jeżeli podam liczbę np. 2 to wykonuje jeden obrót a przy drugim kończy pracę przechodząc do else dlaczego? Prosiłbym o poradę...