1740 - Suma B Numere: Difference between revisions
Vardai Erwin (talk | contribs) |
mNo edit summary |
||
Line 45: | Line 45: | ||
return a.isdigit() and 1 < int(a) < 1_000_000 and b.isdigit() and 1 < int(b) < 25_000 | return a.isdigit() and 1 < int(a) < 1_000_000 and b.isdigit() and 1 < int(b) < 25_000 | ||
#verificăm dacă există o sumă consecutivă de b , astfel încât suma numerelor să fie egală cu a | |||
def verifica_suma_consecutiva(a, b): | |||
if (a - (b * (b - 1) / 2)) % b == 0: | if (a - (b * (b - 1) / 2)) % b == 0: | ||
print("DA") | print("DA") #dacă condiția este îndeplinită afișăm DA, altfel NU | ||
else: | else: | ||
print("Nu") | print("Nu") | ||
Line 54: | Line 55: | ||
if __name__ == '__main__': | if __name__ == '__main__': | ||
a = input("Introduceti numarul a: ") | a = input("Introduceti numarul a: ") #citim numerele de la tastaură | ||
b = input("Introduceti numarul b: ") | b = input("Introduceti numarul b: ") | ||
Revision as of 12:21, 11 April 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
Rezolvare ver. 1
<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
- verificăm dacă există o sumă consecutivă de b , astfel încât suma numerelor să fie egală cu a
def verifica_suma_consecutiva(a, b):
if (a - (b * (b - 1) / 2)) % b == 0: print("DA") #dacă condiția este îndeplinită afișăm DA, altfel NU else: print("Nu")
if __name__ == '__main__':
a = input("Introduceti numarul a: ") #citim numerele de la tastaură 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>