3211 - Cumpărături1

De la Universitas MediaWiki
Versiunea pentru tipărire nu mai este suportată și poate avea erori de randare. Vă rugăm să vă actualizați bookmarkurile browserului și să folosiți funcția implicită de tipărire a browserului.

Cerință

Gigel are S lei. O ciocolata costă c lei, iar o napolitană costă n lei. Gigel poate să cumpere fie ciocolate, fie napolitane, cu condiția să cheltuiască întreaga sumă. Scrieți un program care să citească numerele S c n și să afișeze pe ecran:

textul CN dacă Gigel poate alege să cumpere ciocolate sau napolitane; textul C dacă Gigel poate să cumpere numai ciocolate; textul N dacă Gigel poate să cumpere numai napolitane; textul nimic dacă Gigel nu poate să cumpere nici ciocolate, nici napolitane.

Date de intrare

Programul citește de la tastatură numerele naturale S C N.

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 textul precizat în enunț. În caz contrar, se va afișa pe ecran: "Datele de intrare nu corespund restricțiilor impuse."

Restricții și precizări

1 ≤ S , c , n ≤ 1.000.000.000

Exemplul 1

Intrare
15 4 3
Ieșire
Datele de intrare corespund restricțiilor impuse.
N

Explicatie

Gigel are 15 lei, o ciocolată costă 4 lei, iar o napolitană costă 3 lei. Poate cumpăra 5 napolitane, dar nu poate cumpăra ciocolate, deoarece nu ar cheltui întreaga sumă.

Rezolvare

Rezolvare ver. 1

def validare(S, c, n):
    # Verificăm dacă valorile intră în intervalul [1, 1000000000].
    if 1 <= S <= 1000000000 and 1 <= c <= 1000000000 and 1 <= n <= 1000000000:
        # Returnăm True dacă valorile sunt valide.
        return True
    else:
        # Altfel, returnăm False.
        return False


def alege_produsele(S, c, n):
    # Verificăm condițiile cerinței și afișăm mesajul corespunzător.
    if S % c == 0 and S % n != 0:
        print("C")
    elif S % c != 0 and S % n == 0:
        print("N")
    elif S % c == 0 and S % n == 0:
        print("CN")
    else:
        print("nimic")


if __name__ == '__main__':
    # Citim valorile de la tastatură.
    S = int(input("Introduceti suma de bani pe care Gigel o are: "))
    c = int(input("Introduceti pretul unei ciocolate: "))
    n = int(input("Introduceti pretul unei napolitane: "))

    # Verificăm dacă valorile sunt valide.
    if validare(S, c, n):
        print("Datele de intrare corespund restricțiilor impuse.")
        # Apelăm funcția alege_produsele dacă valorile sunt valide.
        alege_produsele(S, c, n)
    else:
        print("Datele de intrare nu corespund restricțiilor impuse.")