0487 - Numarare2: Difference between revisions
Line 32: | Line 32: | ||
<syntaxhighlight lang="python" line="1"> | <syntaxhighlight lang="python" line="1"> | ||
# 0487 Numarare2 | # 0487 Numarare2 | ||
def | def nr_elem_cu_val_strict_mai_mare_decat_media_aritm(vector, n): | ||
suma = sum(vector) | |||
medie = suma / n | |||
C = sum(1 for x in vector if x >= medie) | |||
print(C) | |||
def citire_conform_restrictiilor(): | def citire_conform_restrictiilor(): | ||
n = int(input()) | n = int(input()) | ||
if n < 1 or n > | if n < 1 or n > 200: | ||
print("Datele nu corespund restricțiilor impuse.") | print("Datele nu corespund restricțiilor impuse.") | ||
exit() | exit() | ||
vector = list(map(int, input().split())) | vector = list(map(int, input().split())) | ||
for x in vector: | for x in vector: | ||
if x > | if x < 0 or x > 1000: | ||
print("Datele nu corespund restricțiilor impuse.") | print("Datele nu corespund restricțiilor impuse.") | ||
exit() | exit() | ||
Line 65: | Line 58: | ||
if __name__ == '__main__': | if __name__ == '__main__': | ||
vector, n = citire_conform_restrictiilor() | vector, n = citire_conform_restrictiilor() | ||
nr_elem_cu_val_strict_mai_mare_decat_media_aritm(vector, n) | |||
Revision as of 17:52, 15 March 2023
Sursa: - Numarare2
Cerinţa
Se dă un vector cu n numere naturale. Să se determine câte dintre elemente au valoarea strict mai mare decât media aritmetică a elementelor vectorului.
Date de intrare
Programul citește de la tastatură numărul n, iar apoi n numere naturale, reprezentând elementele vectorului.
Date de ieșire
Dacă datele sunt introduse corect, pe ecran se va afișa: "Datele sunt introduse corect.", apoi pe un rând nou va afișa numărul C, reprezentând valoarea cerută. În caz contrar, se va afișa pe ecran: "Datele nu corespund restricțiilor impuse.".
Restricţii şi precizări
- 1 ⩽ n ⩽ 200
- elementele vectorului vor fi cuprinse între 0 și 1.000
Exemple
Exemplul 1
- Intrare
- 5
- 5 0 2 1 4
- Ieșire
- Datele sunt introduse corect.
- 2
Explicație exemplul 1
- Media aritmetică a elementelor este 2.4. În vector sunt 2 elemente cu valoarea strict mai mare decât 2.4: 5 4
Exemplul 2
- Intrare
- 1234
- Ieșire
- Datele nu corespund restricțiilor impuse.
Rezolvare
<syntaxhighlight lang="python" line="1">
- 0487 Numarare2
def nr_elem_cu_val_strict_mai_mare_decat_media_aritm(vector, n):
suma = sum(vector) medie = suma / n C = sum(1 for x in vector if x >= medie) print(C)
def citire_conform_restrictiilor():
n = int(input()) if n < 1 or n > 200: print("Datele nu corespund restricțiilor impuse.") exit() vector = list(map(int, input().split())) for x in vector: if x < 0 or x > 1000: print("Datele nu corespund restricțiilor impuse.") exit() if n != len(vector): print("Datele nu corespund restricțiilor impuse.") exit() print("Datele sunt introduse corect.") return vector, n
if __name__ == '__main__':
vector, n = citire_conform_restrictiilor() nr_elem_cu_val_strict_mai_mare_decat_media_aritm(vector, n)
</syntaxhighlight>