C++ tudna segiteni mi a ebben a hiba?
#include <iostream>
#include <math.h>
using namespace std;
int main()
{
double x,y,s;
cout << "adjal az 'x' erteket : " << endl;
cin >> x;
cout << "adjal az 'y' erteket : " << endl;
cin >> y;
if x-y=0
{
s=pow(x,2)+ cbrt(y)+sin(y);
cout << " az eredmény : " << s << endl;
}
if else x-y>0
{
s= pow(x+y,2)+log(x);
cout << " az eremény (x+y)^2-ln(x) : " << s << endl;
}
else
s=pow(y-x,2)+tan(y);
cout << "az eredmény : " << s << endl;
return 0;
}
kell stdafx.h is
Aztán ilyen tök alap dolgok, hogy if-nél zárójelezed a feltételt, meg nincs if else hanem else if van...
-1. Használj valami kódmegosztó oldalt, indentáld a kódot, mert így összefolyik az egész.
0. "adjal az 'x' erteket" helyett inkább "Adjad meg az 'x' értékét".
1. Az if...else if...else feltétel formátuma:
if (feltétel) {
utasítások;
} else if (feltétel) {
utasítások;
} else {
utasítások;
}
tehát a feltételt zárójelek közé kell tenni; és "else if" nem "if else".
2. Amikor össze akarjuk hasonlítani hogy valamilyen kifejezés egyenlő egy értékkel akkor a relációs "egyenlő" operátort (==) használjuk nem az értékadó operátort (=).
3. A legutolsó eredménykiírást a feltétel else ágába kéne tenni, mert így, ha x - y >= 0, akkor kétszer kerül kiírásra az eredmény.
Szóval valahogy így:
"3. A legutolsó eredménykiírást a feltétel else ágába kéne tenni"
Kiegészítés: vagy a feltételen kívülre kell tenni.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!