3925 - Rest1

From Bitnami MediaWiki

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>