algorytm.org

Średnia arytmetyczna



Baza Wiedzy
wersja offline serwisu przeznaczona na urządzenia z systemem Android
Darowizny
darowiznaWspomóż rozwój serwisu
Nagłówki RSS
Artykuły
Implementacje
Komentarze
Forum
Bookmarki






Sonda
Implementacji w jakim języku programowania poszukujesz?

Średnia arytmetyczna
Ocena użytkowników:***** / 80
SłabyŚwietny 
Wpisany przez Bartosz Bednarczyk, 09 września 2011 13:35

Średnia arytmetyczna jest to iloraz sumy n liczb i n. Możemy ją zapisać za pomocą ułamka:

\frac{a_{1}+a_{2}+a_{3}+\ldots+a_{n}}{n}


By obliczyć średnią najpierw tworzymy zmienna wynik i przypisujemy jej wartość 0. Następnie wczytujemy n, czyli ilość liczb w ciągu. Następnie wskakujemy w pętle, sprawdzającą czy zmienna pomocnicza i (ilość obiegów) jest mniejsza od n. Jeżeli warunek został spełniony, to wczytujemy kolejną liczbę i dodajemy ją do wynik. W innym przypadku dzielimy wynik przez n i wypisujemy go. Pseudokod ma zatem następującą postać:
  1. Wczytaj n.
  2. Utwórz zmienną Wynik i nadaj jej wartość 0.
  3. Utwórz zmienna i i nadaj jej wartość 0.
  4. Dopóki i < n wczytaj a. Do zmiennej Wynik przypisz jej sumę z a. Do i dodaj 1.
  5. Do zmiennej Wynik przypisz iloraz Wynik i n.
  6. Wypisz Wynik
Algorytm ten możemy przedstawić również za pomocą schematu blokowego:

schemat blokowy - średnia artymetyczna


Przykład:

Działanie algorytmu dla n = 3, a1 = 4, a2 = 3, a3 = 2.
Wynikian
004
413
722
93-
3--


Informacja dla zaawansowanych: podczas dodawania liczb zmiennoprzecinkowych mogą pojawiać się błędy zaokrągleń. Błąd jest tym większy im większa jest różnica pomiędzy dodawanymi liczbami. Aby zminimalizować błąd należy najpierw liczby, dla których chcemy obliczyć średnią posortować, a następnie dodawać je począwszy od najmniejszej.
Implementacje
AutorJęzyk
programowania
KomentarzOtwórzPobierzOcena
Bartosz BednarczykC#
.cs
.cs
***** / 9
Bartosz BednarczykC/C++C
.cpp
.cpp
***** / 12
Bartosz BednarczykC/C++C++
.cpp
.cpp
***** / 11
Adam CZC/C++C++, funkcja obliczająca wynik
.cpp
.cpp
***** / 12
Michał WitaszekDelphi/PascalDelphi
.pas
.pas
***** / 3
Bartosz BednarczykJava
.java
.java
***** / 6
golabowJava
.java
.java
***** / 5
Dominik GoździukPerl
.pl
.pl
***** / 1
Bartosz BednarczykPhp
.php
.php
***** / 5
Bartosz BednarczykPython
.py
.py
***** / 6
kacperPythonprzykład z użyciem tablicy
.py
.py
***** / 14
Nikodem SolarzRubymetoda obliczająca średnią arytmetyczną z tablicy elementów
.rb
.rb
***** / 0
 
Dodaj własną implementację tego algorytmu
  • Zaloguj się na stronie
Plik:
Język
programowania:
Komentarz:
  By móc dodać implementacje zaloguj się na stronie

Poprawiony: 28 października 2012 15:32
Komentarze
photo
-7 # johny 2013-01-20 16:08
A gdzie jest wprowadzanie liczb? Poza tym schemat jest źle narysowany. Jestem cienki w tych sprawach, ale takiego schematu w życiu bym nie narysował bo by mnie wykładowca chyba z sali wywalił.
Odpowiedz | Odpowiedz z cytatem | Cytować
photo
+4 # Zdolnycool 2014-05-07 17:52
Czy dobrze rozumiem, że "i" jest tylko po to, żeby się algorytm nie zapętlił?
Odpowiedz | Odpowiedz z cytatem | Cytować
Dodaj komentarz