2948 - Media Patratica: Difference between revisions

From Bitnami MediaWiki
Paul Ungur (talk | contribs)
No edit summary
Line 10: Line 10:
== Restricții și precizări ==
== Restricții și precizări ==
<span style="color: red;"> 1 ≤ n ≤ 1000</span>
<span style="color: red;"> 1 ≤ n ≤ 1000</span>
cele<span style="color: red;">  n</span numere citite vor fi mai mici decât <span style="color: red;"> 1.000.000 </span>
cele<span style="color: red;">  n</span> numere citite vor fi mai mici decât <span style="color: red;"> 1.000.000 </span>


== Exemplu: ==
== Exemplu: ==

Revision as of 16:49, 29 April 2023

Cerința

Se dau n numere naturale. Calculați media pătratică a celor n numere citite cu 2 zecimale exacte.

Date de intrare

Programul citește de la tastatură numărul n, iar apoi n numere naturale.

Date de ieșire

Programul va afișa pe ecran media pătratică a celor n numere cu 2 zecimale exacte.

Restricții și precizări

1 ≤ n ≤ 1000 cele n numere citite vor fi mai mici decât 1.000.000

Exemplu:

Intrare 5 1 2 3 4 5

Ieșire 3.31

Rezolvare

<syntaxhighlight lang="python" line="1"> def validare_date_intrare(n, nums):

   if not 1 <= n <= 1000:
       print("Numărul n trebuie să fie între 1 și 1000!")
       return False
   if len(nums) != n:
       print("Trebuie să introduceți exact {} numere!".format(n))
       return False
   for nr in nums:
       if not 1 <= nr <= 1000000:
           print("Numerele trebuie să fie cuprinse între 1 și 1.000.000!")
           return False
   print("Datele sunt introduse corect.")
   return True


def media_patratica(nums):

   suma_patrate = sum([num ** 2 for num in nums])
   media_patratica = (suma_patrate / len(nums)) ** 0.5
   print(round(media_patratica, 2))


if __name__ == '__main__':

   n = int(input())
   nums = list(map(int, input().split()))
   if validare_date_intrare(n, nums):
       media_patratica(nums)

</syntaxhighlight>