Miten onnistuis tehtdä C -kielellä ohjelma, jossa taulukkoon syötetään jokin lasku, esim. 4+6/2-(2+3) ja vastaukseksi pitäis saada 2.
Eli ensin pitäis laskea sulkeet ja sitten kerto/jako ja lopuksi plus/miinus -laskut. Laskujärjestys on vasemmalta oikealle.
Numerot on pelkästään yksinumeroisia positiivisia lukuja.
Jotenkin pitäis etsiä taulukosta tiettyjä merkkejä ja sitten tehdä laskutoimitus merkin edellisestä ja jälkeisestä numerosta?????
Eikös näitä "laskin"-aiheita ole jo jossain määrin?
Rekursiivisella funktiolla on yksi vaihtoehto. Funktio etenee vassemmalta oikealle, mutta aina, kun se löytää suuremmalla prioriteetilla olevan operaation, funktio kutsuu itseään;
Pöytämallina jokseenkin seuraavanlainen;
tulos(4+6/2-(2+3)) 4 + tulos(6/2-(2+3)) 3 - tulos((2+3)) 2 + 3 palauta 5 3 - 5 palauta -2 4 + (-2) palauta 2
Aihe on jo aika vanha, joten et voi enää vastata siihen.