1. naloga
Vesoljske vsote
Preučevalec vesoljske matematike, Tim, je na eni izmed svojih odprav v vesolje odkril skrivnosten tuj zapis vsot. Niz „*---**-*-----*“ predstavlja vesoljski zapis vsote 1 + 4 + 4 + 5 + 10. Po podrobnem pregledu nekaj zapisov je ugotovil, da za zapisovanje vsot v vesolju obstajajo naslednja pravila:
- Na začetku postavimo trenutno število na 1.
- Znak „*“ doda trenutno število v zapis vsote (na konec).
- Znak „-“ poveča trenutno število za 1.
Tim ni najbolj spreten pri programiranju, zato te prosi, da mu napišeš program (ali podprogram oz. funkcijo), ki vesoljski zapis vsote pretvori v človeku berljiv račun. Na standardni vhod bo tvoj program dobil niz znakov „*“ in „-“, ki naj ga pretvori v človeku berljiv račun (na koncu naj doda tudi enačaj in končno vrednost vsote) in izpiše na standardni izhod (ali pa v datoteko vsota.txt, karkoli ti je lažje). Predpostaviš lahko, da vsebuje vhodni niz vsaj eno zvezdico „*“. Zgornji niz naj tvoj program izpiše kot „1 + 4 + 4 + 5 + 10 = 24“.
Tim je pripravil tudi dva primera, da mu boš lažje pomagal.
Primer 1:
Vhod: *---**-*-----*
Izhod: 1 + 4 + 4 + 5 + 10 = 24
Naslednja tabela kaže vrednost trenutnega števila po vsakem prebranem znaku:
Znak: | * | - | - |
- |
* | * |
- |
* | - | - | - | - | - | * | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Število: |
1 |
1 | 2 | 3 | 4 | 4 |
4 | 5 | 5 | 6 | 7 | 8 | 9 | 10 | 10 |
Primer 2:
Vhod: -----*-*
Izhod: 6 + 7 = 13
Naslednja tabela kaže vrednost trenutnega števila po vsakem prebranem znaku:
Znak: | - |
- | - |
- |
- |
* |
- |
* | |
---|---|---|---|---|---|---|---|---|---|
Število: |
1 |
2 |
3 |
4 |
5 |
6 |
6 |
7 |
7 |