0450 - Mini Calc

De la Universitas MediaWiki

Cerință

Se citesc de la tastatură 3 numere naturale, a, b, c. Să se realizeze cu a și b operația codificată prin numărul c.

Date de intrare

Programul va citi de la tastatură 3 numere naturale.

Date de ieșire

Dacă datele sunt introduse corect, pe ecran se va afișa: "Datele de intrare corespund restricțiilor impuse." și programul afișează pe ecran mesajul :

Dacă al treilea număr este 1 programul va afișa pe ecran suma primelor două numere.

Dacă al treilea număr este 2 programul va afișa pe ecran diferența dintre primul număr și al doilea.

Dacă al treilea număr este 3 programul va afișa pe ecran produsul primelor două numere.

Dacă al treilea număr este 4 programul va afișa pe ecran câtul împărțirii dintre primul număr și al doilea.

Dacă al treilea număr este 5 programul va afișa pe ecran restul împărțirii dintre primul număr și al doilea.

În caz contrar, se va afișa pe ecran: "Datele de intrare nu corespund restricțiilor impuse."

Restricții și precizări

  • Primele două numere sunt naturale, mai mici decât 32676.
  • Primul număr este mai mare sau egal cu al doilea.
  • Al doilea număr este nenul.
  • Al treilea număr este din mulțimea {1,2,3,4,5}.

Exemplul 1

Intrare
4 2 3
Ieșire
Datele de intrare corespund restricțiilor impuse.
8

Rezolvare

Rezolvare ver. 1

def validare(a, b, c):
    if 0 <= a < 32676 and 0 < b < 32676 and a >= b and c in [1, 2, 3, 4, 5]:
        return True
    return False


def operatie(a, b, c):
    if c == 1:
        # Suma primelor doua numere
        rezultat = a + b
    elif c == 2:
        # Diferenta dintre primul si al doilea numar
        rezultat = a - b
    elif c == 3:
        # Produsul primelor doua numere
        rezultat = a * b
    elif c == 4:
        # Catul impartirii dintre primul si al doilea numar
        rezultat = a // b
    elif c == 5:
        # Restul impartirii dintre primul si al doilea numar
        rezultat = a % b
    return rezultat


if __name__ == "__main__":
    # Citim cele trei numere de la tastatura
    a = int(input("Introdu primul numar: "))
    b = int(input("Introdu al doilea numar: "))
    c = int(input("Introdu cifra operatiei dorite (1 pentru suma, 2 pentru diferenta, 3 pentru produs, 4 pentru catul impartirii, 5 pentru restul impartirii): "))

    if validare(a, b, c):  # Apelam functia de validare
        print("Datele de intrare corespund restricțiilor impuse.")  # In caz afirmativ afisam mesajul pozitiv si apelam functia operatie
        print(operatie(a, b, c))
    else:  # In caz contrar afisam mesajul corespunzator
        print("Datele de intrare nu corespund restricțiilor impuse.")