3211 - Cumpărături1: Difference between revisions
Vardai Erwin (talk | contribs) |
|||
(One intermediate revision by the same user not shown) | |||
Line 11: | Line 11: | ||
==Date de ieșire== | ==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== | ==Restricții și precizări== | ||
Line 22: | Line 22: | ||
;Ieșire | ;Ieșire | ||
:Datele de intrare corespund restricțiilor impuse. | |||
: N | : N | ||
Latest revision as of 17:17, 22 April 2023
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
<syntaxhighlight lang="python" line="1" start="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.")
</syntaxhighlight>