Jump to content
Main menu
Main menu
move to sidebar
hide
Navigation
Main page
Recent changes
Random page
Help about MediaWiki
Bitnami MediaWiki
Search
Search
Create account
Log in
Personal tools
Create account
Log in
Pages for logged out editors
learn more
Contributions
Talk
Editing
0049 - Factorial
Page
Discussion
English
Read
Edit
Edit source
View history
Tools
Tools
move to sidebar
hide
Actions
Read
Edit
Edit source
View history
General
What links here
Related changes
Special pages
Page information
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
Sursa: [https://www.pbinfo.ro/probleme/49/factorial] == Cerinţa == Să se scrie un program care citește numărul natural '''n''' și determină valoarea lui '''n!'''. == Date de intrare == Programul citește de la tastatură numărul '''n'''. == Date de iesire == Dacă datele sunt introduse corect, în consolă se va afișa: "Datele introduse corespund cerintelor", iar pe rând nou rezultatul lui '''n!'''. În caz contrar, se va afișa pe ecran: "Datele introduse nu corespund cerintelor". == Restricţii şi precizări == * 0 ⩽ '''n''' ⩽ 15 * prin definiție, 0! = 1 == Exemplu == === Exemplul 1 === ; Intrare : 4 ; Ieșire : Datele introduse corespund cerintelor. : 24 === Exemplul 2 === ; Intrare : 0 ; Ieșire : Datele introduse corespund cerintelor. : 1 === Exemplul 3 === ; Intrare : 16 ; Ieșire : Datele introduse nu corespund cerintelor. === Rezolvare === <syntaxhighlight lang="python" line> #0049 import math def validare(n): if(n < 0 or n > 15): print("Datele introduse nu corespund cerintelor.") return False else: return True def functie_factorial(n): if validare(n): print("Datele introduse corespund cerintelor.") print(math.factorial(n)) if __name__ == "__main__": numar = int(input("Introduceti numar: ")) functie_factorial(numar) </syntaxhighlight> == Explicatie rezolvare == Programul are o funcție "validare(n)", care primește un argument n reprezentând un număr întreg și verifică dacă acesta se încadrează în intervalul [0, 15]. Dacă numărul nu se încadrează în acest interval, se afișează un mesaj de eroare, iar funcția returnează valoarea booleană "False". În caz contrar, funcția returnează valoarea booleană "True", semnificând că numărul este valid și se poate calcula factorialul acestuia. Funcția "functie_factorial(n)" primește un argument n reprezentând numărul pentru care se dorește calcularea factorialului. În primul rând, aceasta verifică dacă numărul este valid, apelând funcția "validare(n)". Dacă numărul este valid, se afișează un mesaj de confirmare și se calculează factorialul acestuia prin intermediul funcției "math.factorial()". În caz contrar, nu se calculează factorialul și se afișează mesajul de eroare din funcția "validare(n)". În funcția "main", programul primește un număr întreg de la utilizator prin intermediul funcției "input()", convertindu-l apoi la tipul întreg utilizând funcția "int()". Programul apoi apelează funcția "functie_factorial(n)" cu argumentul numărul introdus de utilizator, astfel încât să se calculeze factorialul acestuia sau să se afișeze mesajul de eroare în cazul în care numărul nu este valid.
Summary:
Please note that all contributions to Bitnami MediaWiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
Bitnami MediaWiki:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)
Toggle limited content width