3200 - Nea Dragulin: Difference between revisions
Robert Manc (talk | contribs) No edit summary |
Robert Manc (talk | contribs) No edit summary |
||
Line 40: | Line 40: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== Explicație == | |||
Acest program primește ca date de intrare două numere întregi: numărul și k, iar apoi calculează restul împărțirii numărului format prin concatenarea numărului dat de k ori, la 72. | |||
Validarea datelor de intrare este realizată prin funcția validare_date(), care verifică dacă cele două numere date se încadrează într-un anumit interval. | |||
Funcția rest_impartire() primește ca parametri numărul și k și îi concatenează k ori într-un număr întreg numit numar_concatenat. Apoi, funcția calculează restul împărțirii numar_concatenat la 72, utilizând operatorul modulo %. | |||
În funcție de validarea datelor de intrare, se afișează restul împărțirii, sau un mesaj corespunzător. |
Latest revision as of 15:29, 28 April 2023
Cerinţa[edit | edit source]
Nea Drăgulin are un numar natural pe care îl scrie de k ori, unul după altul. Aflaţi restul împărţirii numărului astfel obţinut la 72.
Date de intrare[edit | edit source]
Programul citește de la tastatură numerele numar şi k.
Date de ieşire[edit | edit source]
Programul va afișa pe ecran restul împărţirii numărului obţinut la 72.
Restricții și precizări[edit | edit source]
- numar, k ∈ Ν
- 1 ⩽ numar, k ⩽ 2.000.000.000
Exemplu[edit | edit source]
- Intrare
- 51 3
- Ieșire
- Datele de intrare corespund restricțiilor impuse.
- 63
Explicație[edit | edit source]
Nea Drăgulin scrie numărul 51 de 3 ori obţinând numărul 515151. Restul împărţirii acestuia la 72 este 63.
Rezolvare[edit | edit source]
<syntaxhighlight lang="python" line> def validare_date(numar, k):
flag = False if 0 <= int(numar) <= 2_000_000_000 and 0 <= int(k) <= 2_000_000_000: flag = True return flag
def rest_impartire(numar, k):
numar_concatenat = int(str(numar) * k) rest = numar_concatenat % 72 return rest
if __name__ == '__main__':
numar, k = map(int, input().split()) if validare_date(numar, k): print("\nDatele de intrare corespund restricțiilor impuse.\n") print(rest_impartire(int(numar), int(k))) else: print("Datele de intrare nu corespund restricțiilor impuse.")
</syntaxhighlight>
Explicație[edit | edit source]
Acest program primește ca date de intrare două numere întregi: numărul și k, iar apoi calculează restul împărțirii numărului format prin concatenarea numărului dat de k ori, la 72.
Validarea datelor de intrare este realizată prin funcția validare_date(), care verifică dacă cele două numere date se încadrează într-un anumit interval.
Funcția rest_impartire() primește ca parametri numărul și k și îi concatenează k ori într-un număr întreg numit numar_concatenat. Apoi, funcția calculează restul împărțirii numar_concatenat la 72, utilizând operatorul modulo %.
În funcție de validarea datelor de intrare, se afișează restul împărțirii, sau un mesaj corespunzător.