tpc5 inicio

This commit is contained in:
Tiago Sousa 2023-03-19 19:32:54 +00:00
parent 741d95dd79
commit 2bd5481644

40
TPC5/tpc5.py Normal file
View file

@ -0,0 +1,40 @@
import re
import sys
moedas_validas = ["1c", "2c", "5c", "10c", "20c", "50c", "1e", "2e"]
def format_saldo(saldo):
euros = saldo // 1
cents = (saldo - euros) * 100
return f"{euros}e{cents}c"
def main():
levantado = False
msg = ""
saldo = 0
for line in sys.stdin:
if not levantado and re.match(r"LEVANTAR\s*",line):
levantado = True
msg = "Introduza moedas."
elif levantado and re.match(r"MOEDA\s",line):
moedas = re.findall(r"(\d+)(\w)",line)
invalidas = []
for moeda in moedas:
if moeda.group(0) in moedas_validas:
valor = int(moeda.group(1))
if moeda.group(2) == "c":
valor = valor / 100
saldo += valor
else:
invalidas.append(moeda.group(0))
if len(invalidas) > 1:
msg += str(invalidas) + " - moedas invalidas; "
msg += "saldo = " + format_saldo(saldo)
elif
print(msg)
if __name__ == "__main__":
main()