3925 - Rest1: Difference between revisions
Pagină nouă: ==Cerință== Se dau numerele naturale '''n''', '''c''' și '''r'''. Să se determine numărul minim '''m''', strict mai mare decât '''n''', care dă restul '''r''' prin împărțire la '''c'''. ==Date de intrare== Programul citește de la tastatură numerele '''n''', '''c''' și '''r'''. ==Date de ieșire== Programul va afișa pe ecran numărul '''m'''. ==Restricții și precizări== *1 ≤ '''n''' ≤ 1.000.000.000.000 *0 ≤ '''r''' < '''c''' ≤ 1.000.000.000.000 ==E... |
Vardai Erwin (talk | contribs) |
||
(One intermediate revision by the same user not shown) | |||
Line 6: | Line 6: | ||
==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 va afișa pe ecran numărul '''m'''. Î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 18: | Line 18: | ||
;Ieșire | ;Ieșire | ||
:Datele de intrare corespund restricțiilor impuse. | |||
:36 | :36 | ||
Latest revision as of 18:09, 22 April 2023
Cerință[edit | edit source]
Se dau numerele naturale n, c și r. Să se determine numărul minim m, strict mai mare decât n, care dă restul r prin împărțire la c.
Date de intrare[edit | edit source]
Programul citește de la tastatură numerele n, c și r.
Date de ieșire[edit | edit source]
Dacă datele sunt introduse corect, pe ecran se va afișa: "Datele de intrare corespund restricțiilor impuse." și programul va afișa pe ecran numărul m. În caz contrar, se va afișa pe ecran: "Datele de intrare nu corespund restricțiilor impuse."
Restricții și precizări[edit | edit source]
- 1 ≤ n ≤ 1.000.000.000.000
- 0 ≤ r < c ≤ 1.000.000.000.000
Exemplul 1[edit | edit source]
- Intrare
- 30 7 1
- Ieșire
- Datele de intrare corespund restricțiilor impuse.
- 36
Rezolvare[edit | edit source]
Rezolvare ver. 1[edit | edit source]
<syntaxhighlight lang="python" line="1" start="1"> def validare(n, c, r):
# Verifica daca n este intre 1 si 1000000000000 if n < 1 or n > 1000000000000: return False # Verifica daca c este intre 0 si 1000000000000 if c < 0 or c > 1000000000000: return False # Verifica daca r este intre 0 si c-1 if r < 0 or r >= c: return False # Daca toate conditiile sunt indeplinite, returneaza True return True
def numar_minim(n, c, r):
m = n + 1 # Cat timp restul impartirii lui m la c nu este egal cu r, adauga 1 la m while m % c != r: m += 1 return m
if __name__ == "__main__":
# Citirea datelor de intrare n, c, r = map(int, input().split())
# Verificarea datelor de intrare și calculul valorilor cerute if validare(n, c, r): # Afiseaza un mesaj de confirmare a datelor de intrare valide print("Datele de intrare corespund restricțiilor impuse.") # Afiseaza rezultatul apelarii functiei numar_minim cu parametrii specificati print(numar_minim(n, c, r)) else: # Afiseaza un mesaj de eroare daca datele de intrare nu sunt valide print("Datele de intrare nu corespund restricțiilor impuse.")
</syntaxhighlight>