0114 - FNumarDivizoriImpari: Difference between revisions
Cuceu Andrei (talk | contribs) Pagină nouă: ==Cerinţa== Să se scrie o funcție Python care să determine numărul divizorilor impari ai unui număr natural transmis ca parametru. Funcția întoarce rezultatul prin intermediul unui parametru de ieşire. ==Restricţii şi precizări== *numele funcției va fi '''nr_div_imp''' *funcția va avea doi parametri, reprezentând numărul pentru care se calculează numarul divizorilor *impari, respectiv valoarea calculată *numărul pentru care se calculează numărul diviz... |
Vardai Erwin (talk | contribs) |
||
Line 28: | Line 28: | ||
return result | return result | ||
n = int(input("Introduceti numarul n: ")) | if __name__ == '__main__': | ||
result = nr_div_imp(n) | n = int(input("Introduceti numarul n: ")) | ||
if result == -1: | result = nr_div_imp(n) | ||
if result == -1: | |||
else: | print("Numarul introdus nu este valid.") | ||
else: | |||
print("Datele de intrare sunt corecte.") | |||
print("Numarul de divizori impari ai lui", n, "este:", result) | |||
</syntaxhighlight> | </syntaxhighlight> |
Revision as of 19:30, 2 April 2023
Cerinţa
Să se scrie o funcție Python care să determine numărul divizorilor impari ai unui număr natural transmis ca parametru. Funcția întoarce rezultatul prin intermediul unui parametru de ieşire.
Restricţii şi precizări
- numele funcției va fi nr_div_imp
- funcția va avea doi parametri, reprezentând numărul pentru care se calculează numarul divizorilor *impari, respectiv valoarea calculată
- numărul pentru care se calculează numărul divizorilor impari va fi mai mare decât 1 și mai mic decât 2.000.000.000
Important
Soluţia propusă va conţine doar definiţia funcţiei cerute. Prezenţa în soluţie a altor instrucţiuni poate duce erori de compilare sau de execuţie care vor avea ca efect depunctarea soluţiei.
Rezolvare
Rezolvare ver. 1
<syntaxhighlight lang="python" line="1" start="1">
def nr_div_imp(n):
if n <= 1 or n >= 2000000000: return -1 result = 0 for i in range(1, n+1, 2): if n % i == 0: result += 1 return result
if __name__ == '__main__':
n = int(input("Introduceti numarul n: ")) result = nr_div_imp(n) if result == -1: print("Numarul introdus nu este valid.") else: print("Datele de intrare sunt corecte.") print("Numarul de divizori impari ai lui", n, "este:", result)
</syntaxhighlight>