SIO
  Zadania
  Ranking
  Statystyki
  Rozwiązania
  Wiadomości
  Pytania
  Forum
  Przydatne zasoby
  Dokumenty
  O konkursie

  Wejście

  OI10-3
  BUK2003
  OI10-2
  EUNIS2003
  ACM-Trening5
  ACM-Trening4
  ACM-Trening3
  ACM-Trening2
  AP-ACM2
  AP-ACM
  OI10-1
  AP2002
  OI9-3
  PA 2002
  Mini PA
  OI9-2
  OI9-1
  PA 2001

wydruk

Kalkulator

Termin oddawania rozwiązań: 07.04.2003 12:00

Napisz program obliczający wartość prostych wyrażeń arytmetycznych składających się ze cyfr, operacji + i *, oraz nawiasów.

Wejście

Na wejściu podane jest jedno wyrażenie arytmetyczne, w następującym formacie:
Wyrazenie := WS W WS
W := [0-9] | W WS + WS W | W WS * WS W | ( WS W WS )
WS := [ \t\n]*
Można założyć, że wyrażenie jest poprawne. Wartość wyrażenia (jak i wszystkie wyniki pośrednie) mieści się w zakresie typu longint.

Wyjście

Na wyjściu należy zapisać jedną liczbę całkowitą będącą wartością wyrażenia

Przykład 1

Dla danych:
1+1+1 +   (
  2*3  )
 +9
poprawną odpowiedzią jest:
18

Przykład 2

Dla danych:
1+1*2*(3+1)+1
poprawną odpowiedzią jest:
10

Uwaga

Zadanie można rozwiązywać tylko w C/C++/Pascalu.
CEPC 2002, 2003-07-15 18:17:18