Sprawdź się
Napisz program, który będzie wypisywać znaki z łańcuchu znaków ciag
tak długo, aż napotka znak, który jest cyfrą.
Przetestuj swój program dla następujących danych:
ciag = "asfkbahwdkcvkjxheewid1fdsf"
Specyfikacja problemu:
Dane:
ciag
– łańcuch znaków, zawierający co najmniej jedną cyfrę
Wynik:
Program na standardowym wyjściu wypisuje znaki z łańcucha znaków ciag
do czasu napotkania na cyfrę.
Napisz program, który doda znaki operatorów arytmetycznych (dodawania +
, odejmowania -
, mnożenia *
oraz dzielenia /
) kolejno występujących w łańcuchu znaków wyrazenie
do łańcucha znaków napis
, a następnie wypisze napis
.
Przetestuj swój program dla następujących danych:
napis = ""
wyrazenie = "(3/4*9)-4+8/9"
Specyfikacja problemu:
Dane:
napis
– łańcuch znakówwyrazenie
– łańcuch znaków
Wynik:
Program wypisuje łańcuch znaków powstały poprzez sklejenie łańcucha znaków napis
i kolejnych operatorów arytmetycznych, występujących w łańcuchu znaków wyrazenie
.
Napisz program, który w sposób rekurencyjny zamienia zapis wyrażenia arytmetycznego w łańcuchu znaków klasyczna
z notacji klasycznej na ONP i wypisuje je w jednym wierszu. Każde z wyrażeń arytmetycznych zapisanych w łańcuchu klasyczna
powinno być otoczone parą nawiasów okrągłych, a między operandami i operatorami nie powinien występować znak spacji.
Przetestuj swój program dla następujących danych:
klasyczna = "((8*9)*(3+6))"
Specyfikacja problemu:
Dane:
klasyczna
– ciąg znaków, wyrażenie arytmetyczne zapisane w notacji infiksowej, gdzie dozwolonymi znakami są jednocyfrowe liczby, operatory: dodawania+
, odejmowania-
, mnożenia*
, dzielenia/
oraz nawiasy okrągłe: otwierające(
oraz zamykające)
.
Wynik:
Na standardowym wyjściu program wypisuje wyrażenie arytmetyczne klasyczna
zamienione na odwrotną notację polską.