Zadatak: Program za rješavanje izraza u postfix notaciji

Teme vezane za console/GUI programiranje u C/C++ jeziku
11 post(ov)a • Stranica: 2/2.1, 2

Re: Zadatak: Program za rješavanje izraza u postfix notaciji

PostPostao/la Jasko » 24 lip 2014, 09:55

Cao, evo imam i ja jedno rjesenje za zadani zadatak. Posto me zanimo a trenutno ne radim u C-u ponudit cu rjesenje u pythonu 2.7. Odradio sam zadatak iterativno.

python code
niz = raw_input("Unesi niz: ") # Unos niza sa standardnog  ulaza
brojevi, operacije= [], [] # inicijalizacija praznog niz brojeva i operacija
for i in niz:
    try:
        i = float(i)
        brojevi.append(i) # dodaj broj u niz brojevi
    except:
        if(i!=" "):
            operacije.append(i) # dodaj operaciju u niz operacije
rez, k = brojevi[0], 1 # inicijalizacija rezultata i brojaca indeksa
for znak in operacije: # izvrsi racun
    if(znak=="+"):
        rez=rez+brojevi[k]
    elif(znak=="-"):
        rez=rez-brojevi[k]
    elif(znak=="/"):
        rez=rez/brojevi[k]
    elif(znak=="*"):
        rez=rez*brojevi[k]
    k=k+1
print rez


Ako se otvori odgovarajuca rubrika za Python moze se i premjestit Post.

Ovako, unos niza je moguc na dva nacina:
prvi, kao sto je zahtjevano 1 2 3 + +
drugi, bez space prostora 123++

Pozz
Postoji 10 vrsta ljudi na zemlji. Oni koji razumiju binarni sistem i oni koji ga ne razumiju!
Posjetite moj YouTube kanal za gledanje za programiranje i druge teme oko računara.


11 post(ov)a • Stranica: 2/2.1, 2

Na mreži

Trenutno korisnika/ca: / i 1 gost.