0534 - Factorial 1: Difference between revisions

From Bitnami MediaWiki
Pagină nouă: ==Cerința== Să se scrie un program care citește numărul natural n și determină valoarea lui n! = 1 * 2 * 3 * ... * n. ==Date de intrare== Programul citește de la tastatură numărul n. ==Date de ieșire== Programul afișează pe prima linie a ecranului valoarea lui n!. ==Restricții și precizări== *0 ≤ n ≤ 1000; *prin definiție, 0! = 1; ==Exemplul 1== ;Intrare :4 ;Ieșire :Datele de intrare corespund restricțiilor impuse. :24 ==Exemplul 2== ;Intrare :1001 ;Ie...
 
No edit summary
Line 35: Line 35:
         return result         
         return result         


def main():
if __name__ == "__main__":
     n = int(input("Introduceți n: "))
     n = int(input("Introduceți n: "))
     if factorial(n) is not None:
     if factorial(n) is not None:
Line 41: Line 41:
         print(factorial(n))         
         print(factorial(n))         


if __name__ == "__main__":
      
     main()





Revision as of 21:53, 23 April 2023

Cerința

Să se scrie un program care citește numărul natural n și determină valoarea lui n! = 1 * 2 * 3 * ... * n.

Date de intrare

Programul citește de la tastatură numărul n.

Date de ieșire

Programul afișează pe prima linie a ecranului valoarea lui n!.

Restricții și precizări

  • 0 ≤ n ≤ 1000;
  • prin definiție, 0! = 1;

Exemplul 1

Intrare
4
Ieșire
Datele de intrare corespund restricțiilor impuse.
24

Exemplul 2

Intrare
1001
Ieșire
Datele de intrare nu corespund restricțiilor impuse.

Rezolvare

<syntaxhighlight lang="python" line="1">

  1. 0534 - Factorial 1

def factorial(n):

   if n == 0:
       return 1
   elif n < 0 or n > 1000 or not isinstance(n, int):
       print("Datele de intrare nu corespund restrictiilor impuse.")
       return None
   else:
       result = 1
       for i in range(1, n+1):
           result *= i
       return result        

if __name__ == "__main__":

   n = int(input("Introduceți n: "))
   if factorial(n) is not None:
       print("Datele de intrare corespund restricțiilor impuse.")
       print(factorial(n))        




</syntaxhighlight>