Kako prekinuti program u C++ pomoću nekog slova sa tastature
08.12.2007. u 11:55 · pre 229 meseci
#1
Evo o čemu se radi. Ja hoću da mi program za promenljivu "x" prepoznaje kad je unet broj a kada neko slovo sa tastature za prekid program. Znači neću da izaberem recimo 0 za prekid programa već baš slovo. Čuo sam da postoji neka komanda koja omogućava da promenljiva recimo "x" prepozna kad joj je dodeljena numerička vrednosta a kad znakovna ili karakter. Evo konkretnog primera gde bih to hteo da odradim:
#include <iostream>
#include<cmath>
using namespace std;
int main()
{
float x,y;
pocetak: cout << endl;
cout << "Unesite parametar funkcije (x):" << endl;
cin >> x;
if (x<=0.5)
{
y=sqrt (fabs(pow(x,2)+3*x+2));
cout << "Za x=" << x <<" funkcija y=koren|x*x+3*x+2|=" << y << "." << endl;
goto pocetak;
}
if (x>0.5 && x<=1.5)
{
y=log(x+1);
cout << "Za x=" << x <<" funkcija y=ln(x*x+5)=" << y << "." << endl;
goto pocetak;
}
if (x>1.5)
{
y=exp(3*x+1);
cout << "Vrednost eksponencijalne funkcije je: " << y << "." << endl;
goto pocetak;
}
}
Znači kako da nateram ovaj program da se prekine u slučaju da sa tastature unesem recimo slovo "k". Hvala unapred.
#include <iostream>
#include<cmath>
using namespace std;
int main()
{
float x,y;
pocetak: cout << endl;
cout << "Unesite parametar funkcije (x):" << endl;
cin >> x;
if (x<=0.5)
{
y=sqrt (fabs(pow(x,2)+3*x+2));
cout << "Za x=" << x <<" funkcija y=koren|x*x+3*x+2|=" << y << "." << endl;
goto pocetak;
}
if (x>0.5 && x<=1.5)
{
y=log(x+1);
cout << "Za x=" << x <<" funkcija y=ln(x*x+5)=" << y << "." << endl;
goto pocetak;
}
if (x>1.5)
{
y=exp(3*x+1);
cout << "Vrednost eksponencijalne funkcije je: " << y << "." << endl;
goto pocetak;
}
}
Znači kako da nateram ovaj program da se prekine u slučaju da sa tastature unesem recimo slovo "k". Hvala unapred.
Potpis
The truth is out there and I want to believe.