Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: C: Laskulausekkeen laskeminen

TheHanz [18.05.2006 13:35:15]

#

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?????

tgunner [18.05.2006 13:53:39]

#

Eikös näitä "laskin"-aiheita ole jo jossain määrin?

JoinTuanJanohon [19.05.2006 10:49:54]

#

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

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta