Forum » Programiranje » Pomoč C++!
Pomoč C++!
Leptir ::
Zdravo...imam problem ki je sledeč: narediti moram kalkulator v strukturi in naredit funkcijo in glavni program...no to je narejeno samo nevem zakaj hudiča takoj ko ga zaženem napiše "press any key to continue" in se zapre... Vsak odgovor bi mi zelo pomagal še boljša bi bila rešitev. Hvala
Tu je program:
struct oper
{
double op1;
double op2;
char op;
};
void vnos (double op1, double op2, char op, oper bla)
{
bla.op1= op1;
bla.op2= op2;
bla.op= op;
}
double izracun (oper bla)
{
switch (bla.op)
{
case '+' : return bla.op1 + bla.op2; break;
case '-' : return bla.op1 - bla.op2; break;
case '*' : return bla.op1 * bla.op2; break;
case '/' : return bla.op1 / bla.op2; break;
default: return 0;
}
}
int main ()
{
oper bla;
vnos (5, 2, '+', bla);
system ("pause");
return 0;
}
Tu je program:
struct oper
{
double op1;
double op2;
char op;
};
void vnos (double op1, double op2, char op, oper bla)
{
bla.op1= op1;
bla.op2= op2;
bla.op= op;
}
double izracun (oper bla)
{
switch (bla.op)
{
case '+' : return bla.op1 + bla.op2; break;
case '-' : return bla.op1 - bla.op2; break;
case '*' : return bla.op1 * bla.op2; break;
case '/' : return bla.op1 / bla.op2; break;
default: return 0;
}
}
int main ()
{
oper bla;
vnos (5, 2, '+', bla);
system ("pause");
return 0;
}
Iluvatar ::
Tako je. In zelo lepo bi bilo, ce bi tam pri deljenju uposteval, da z nic ne moremo deliti ;)
Iluvatar ::
se pravi tvoj program sedaj izgleda takole:
za deljenj z nic pa se tukaj
struct oper { double op1; double op2; char op; }; int vnos (double op1, double op2, char op, oper bla) { bla.op1= op1; bla.op2= op2; bla.op= op; } double izracun (oper bla) { switch (bla.op) { case '+' : return bla.op1 + bla.op2; break; case '-' : return bla.op1 - bla.op2; break; case '*' : return bla.op1 * bla.op2; break; case '/' : return bla.op1 / bla.op2; break; default: return 0; } } int main () { oper bla; cout << vnos (5, 2, '+', bla) << endl; system ("pause"); return 0; }in to deluje?
za deljenj z nic pa se tukaj
case '/' : return bla.op1 / bla.op2; break;vprasaj ce je op2 = 0, ce je potem ne smes deliti.
Leptir ::
zelo bi mi pomagal ce mi poves ali moram to z if stavkom naredit ali ce mi ti pokazes oz. popravis ker res nujno potrebujem za jutri. Hvala
napsy ::
ne pozabi klicat izracun() ;)
pa kokr mi je znano se argumenti pri C++ tudi podajajo preko kopiranja. Torej moraš pri vnos() podati referenco oz. kazalec na objekt tipa "struct oper".
pa kokr mi je znano se argumenti pri C++ tudi podajajo preko kopiranja. Torej moraš pri vnos() podati referenco oz. kazalec na objekt tipa "struct oper".
"If you die, you die. But when you live you live. There is no time to waste."
c0dehunter ::
zelo bi mi pomagal ce mi poves ali moram to z if stavkom naredit ali ce mi ti pokazes oz. popravis ker res nujno potrebujem za jutri. Hvala
case '/' :{ if(bla.op2==0) cout<<"Napaka: deljenje z nič"<<endl; else return bla.op1 / bla.op2; break;
I do not agree with what you have to say,
but I'll defend to the death your right to say it.
but I'll defend to the death your right to say it.
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | Neznan problem #2 [C]Oddelek: Programiranje | 1679 (1469) | videc |
» | KalkulatorOddelek: Programiranje | 1323 (1090) | lebdim |
» | [VBA]ExcelOddelek: Programiranje | 1148 (1106) | mmaestro |
» | VGA coolerOddelek: Kaj kupiti | 1348 (1107) | Vikking |
» | P3 700/100 HLAJENJE-HELP!Oddelek: Navijanje | 1405 (1293) | element |