Skip to content

ElectroluxV2/rpn-net

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Review Assignment Due Date

Odwrotna Notacja Polska

Termin oddania Punkty
13.05.2023 23:00 10

Przekroczenie terminu o n zajęć wiąże się z karą:

  • punkty uzyskania za realizację zadania są dzielone przez 2n.

Zadanie 1 (Red)

Bazując na zadanej definicji stosów, napisać testu funkcji evalRPN, która pobiera napis będący zapisem wyrażenia arytmetycznego w Odwrotnej Notacji Polskiej (RPN). Dopuszczalne wyrażenia to:

  • liczba całkowita, np. 1, 12, 997
  • operacje dwuargumentowe dodawanie, mnożenie, odejmowanie (już są) i dzielenie (już jest ale nie ma reakcji na błędy)
  • operacje jednoargumentowe: np. silnia czy wartość bezwzględna (lub dowolna inna operacja jednoargumentowa)
  • możliwość obliczania w wybranym systemie liczbowym; do wyboru: binarny, dziesiętny, szesnastkowy. Np.
  • B101 = 5
  • D10 = 10
  • #AB = 171
  • #BA D13 + = 199

Nie należy zapominać, że nie wszystkie ciągi powyższych znaków są poprawnym wyrażeniem RPN (np. 1 2) i to także należy wyrazić w testach. Przykładowe testy znajduje się w pliku RPNTest.

Zadanie 2 (Green)

Zaimplementować metodę evalRPN w klasie RPN, która będzie poprawnie wyliczała wyrażenia RPN opisane powyżej oraz reagowała na niepoprawne wyrażenia. Metoda powinna przejść wszystkie testy opisane w Zadaniu 1.

UWAGA

Rozwiązanie powinno być zbudowane zgodnie z zasadami SOLID.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages