1740 - Suma B Numere: Difference between revisions
Vardai Erwin (talk | contribs) |
Vardai Erwin (talk | contribs) |
||
Line 41: | Line 41: | ||
==Rezolvare== | ==Rezolvare== | ||
<syntaxhighlight lang="python" line="1" start="1"> | <syntaxhighlight lang="python" line="1" start="1"> | ||
def validare_date( | def validare_date(a, b): | ||
return | return a.isdigit() and 1 < int(a) < 1_000_000 and b.isdigit() and 1 < int(b) < 25_000 | ||
def verifica_suma_consecutiva( | def verifica_suma_consecutiva(a, b): | ||
if ( | if (a - (b * (b - 1) / 2)) % b == 0: | ||
print("DA") | print("DA") | ||
else: | else: | ||
Line 53: | Line 53: | ||
if __name__ == '__main__': | if __name__ == '__main__': | ||
a = input("Introduceti numarul a: ") | |||
b = input("Introduceti numarul b: ") | |||
if validare_date( | if validare_date(a, b): | ||
a, b = int(a), int(b) | |||
print("Datele de intrare corespund restricțiilor impuse.") | print("Datele de intrare corespund restricțiilor impuse.") | ||
verifica_suma_consecutiva( | verifica_suma_consecutiva(a, b) | ||
else: | else: | ||
print("Datele de intrare nu corespund restricțiilor impuse.") | print("Datele de intrare nu corespund restricțiilor impuse.") | ||
</syntaxhighlight> | </syntaxhighlight> |
Revision as of 17:59, 14 March 2023
Cerință
Se dau 2 numere naturale, a și b. Să se determine dacă a se poate scrie că suma de b numere naturale consecutive.
Date de intrare
Se dau 2 numere naturale, a și b. Să se determine dacă a se poate scrie că suma de b numere naturale consecutive.
Date de ieșire
Programul va afișa pe ecran numărul mesajul DA dacă a se poate scrie că suma de b numere naturale, iar NU în caz contrar.
Restricții de precizări
- 1 ⩽ a ⩽ 1000000
- 1 ⩽ b ⩽ 25000
Exemplul 1
- Intrare
- 12
- 3
- Ieșire
- Datele introduse corespund restricțiilor impuse.
- DA
Exemplul 2
- Intrare
- 30
- 6
- Ieșire
- Datele introduse corespund restricțiilor impuse.
- NU
Rezolvare
<syntaxhighlight lang="python" line="1" start="1"> def validare_date(a, b):
return a.isdigit() and 1 < int(a) < 1_000_000 and b.isdigit() and 1 < int(b) < 25_000
def verifica_suma_consecutiva(a, b):
if (a - (b * (b - 1) / 2)) % b == 0: print("DA") else: print("Nu")
if __name__ == '__main__':
a = input("Introduceti numarul a: ") b = input("Introduceti numarul b: ")
if validare_date(a, b): a, b = int(a), int(b)
print("Datele de intrare corespund restricțiilor impuse.") verifica_suma_consecutiva(a, b) else: print("Datele de intrare nu corespund restricțiilor impuse.")
</syntaxhighlight>