Kezdőoldal » Számítástechnika » Programozás » Milyen egyszerű módszer van...

Milyen egyszerű módszer van egyszerűbb műveleti sorrend feldolgozására?

Figyelt kérdés
Pl. hogy a 2+1*3-at jól értékelje ki.
2013. ápr. 7. 21:45
 1/7 iostream ***** válasza:
2013. ápr. 7. 21:52
Hasznos számodra ez a válasz?
 2/7 A kérdező kommentje:
ezt kivéve :D
2013. ápr. 7. 22:34
 3/7 anonim ***** válasza:

Ez miért nem jó?

Szinte az összes valamire való program ezt használja és nem véletlenül, ennél jobb módszer nem nagyon létezik.

2013. ápr. 7. 23:30
Hasznos számodra ez a válasz?
 4/7 A kérdező kommentje:
oké de ehhez vermet kell kezelni
2013. ápr. 7. 23:56
 5/7 anonim ***** válasza:

És mi a baj vele?

Csinálsz egy tömböt vagy egy struktúrát, beleteszed a műveleteket. Majd ez alapján meghívod őket a megfelelő sorrendben.

Plusz írhatsz rá egy konvertert is.

2013. ápr. 8. 09:30
Hasznos számodra ez a válasz?
 6/7 iostream ***** válasza:

Ha nem akarsz vermet kezelni, akkor írd meg rekurzívan: megkeresed a legkisebb precedenciájú műveletet, és a két oldalra hívd meg ugyanazt a függvényt, visszaadva az eredményüket elvégezve a műveletet.

Tehát (pszeudoC++-ban)

int fgv(str = "1 + 2 * 3 + 1")

{

//megkeressük az indexet, ahol a legkisebb precedencia van (ez a hátsó + jel)

switch (jel)

{

case '+':

return fgv(str.substr(0, n)) + fgv(str.substr(n+1));

}

}

2013. ápr. 8. 10:20
Hasznos számodra ez a válasz?
 7/7 anonim ***** válasza:
100%
Nem bántásból, de ha ezzel az egyébként rém egyszerű módszerrel az a problémád, hogy vermet kell kezelni, akkor egyenlőre ez még egy elég nagy falat számodra. Kezdetben egyszerűbb dolgokat gyakorolj.
2013. ápr. 8. 10:36
Hasznos számodra ez a válasz?

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

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!