[ miljan9602 @ 22.10.2013. 20:15 ] @
Pozdrav,
Pravim program koji zahteva unos broja 1 ili 0. Kako da zabranim unos necega sta nije 0 ili 1 znam da zabranim unos brojeva koji su veci ili manji od 0 i 1 ali kako da zabranim unos tacke zareza slova i tako to. Hvala unapred.
[ X Files @ 22.10.2013. 20:23 ] @
Programski jezici C/C++ nemaju u standardnim bibliotekama ukljucene bog zna kakve mehanizme za "user friendly" unos podataka kroz konzolu. Svako taj "problem" resava na svoj nacin.

Pogledaj recimo ovo:
http://www.elitesecurity.org/p1747958
http://www.elitesecurity.org/p1786975

Ako nije to to, pitaj opet :)
[ boyan3001 @ 22.10.2013. 20:42 ] @
If char = '0' then int = 0 else if char = '1' then int = 1 else... fak of.
[ miljan9602 @ 22.10.2013. 20:57 ] @
X Files sada sam procitao link koji si mi dao i uspeo sam da skontam jedan deo.

Znaci napravim promenjljivu i zatrazim unos broja, unos broja mora biti 0 ili 1 ostalo sve se eliminse

Mislio sam da ovako napisem ali ne moze

int x;

cin >> x;

if (x != 0 || x !=1)
{
cout << "Unesite 0 ili 1" << endl;
system("PAUSE");
return 0;
}

ali to ne moze jer ja msm da ne mogu da se koriste dva != (znak razlicito) u jednom if-u

Da li postoji neki nacin da sa ovim operatorom != zabranim sve osim 0 ili 1 a ne samo jedan od ta dva ?
[ miljan9602 @ 22.10.2013. 21:30 ] @
Samo da vam javim da sam resio problem.
A evo i ostalima koji se nadju u istoj situaciji


Code:

#include <iostream>

using namespace std;

int main()
{
int a;
cout << "Unesite 0 ili 1" << endl;
cin >> a;
if (a < 0 || a > 1)
{
cout << "Unesite 0 ili 1" << endl;
system("PAUSE");
return 0;
}
else
{
cout << "Izvrsice se naredba" << endl;
}
system("PAUSE");
return 0;
}



Ako se unese bilo sta osim 0 ili nebitno da li to bilo tacka ili zarez ili slovo nece se izvrsiti.
[ Nedeljko @ 23.10.2013. 11:43 ] @
Code (cpp):

int answer()
{
    while (true) {
        char c;

        cout << "Enter 0 or 1:" << endl;
        cin >> c;

        if (c == '0') return 0;
        else if (c == '1') return 1;

        cout << "Error!" << endl;
    }
}