• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

question-closed Zadanie domowe z odcinka 11 kursu Mirosława Zelenta

42 Warsaw Coding Academy
0 głosów
468 wizyt
pytanie zadane 17 listopada 2018 w C i C++ przez Sledziux Początkujący (250 p.)
zamknięte 17 listopada 2018 przez Sledziux

Cześć, murze napisać program w którym podaje 5 liczb, obliczam średnia tych liczb i następnie muszę podać która liczba z tych co podałem jest najbardziej zbliżona do średniej! Robię to kilka godzin, robiłem przerwy i dalej nie wiem jak to zrobić!

 

Gdy wpisuję liczby 1.5   3.14   7.5  1.25  3.42  to pokazuję mi 1.25 zamiast 3.42!

 
 

#include <iostream>

using namespace std;

int main()
{
    float numbers[5];
    cout << "Wpisz 5 liczb: ";
    cin>>numbers[1]>>numbers[2]>>numbers[3]>>numbers[4]>>numbers[5];
    float average = (numbers[1]+numbers[2]+numbers[3]+numbers[4]+numbers[5]) /5;
    cout<<"Srednia tych liczb: "<<average<<endl;
    float difference[5];
    for(int i=0; i<=5;i++) difference[i] = average - numbers[i];
    float minimal;
    minimal = numbers[1];
    if(minimal>numbers[2]) minimal = numbers[2];
    if(minimal>numbers[3]) minimal = numbers[3];
    if(minimal>numbers[4]) minimal = numbers[4];
    if(minimal>numbers[5]) minimal = numbers[5];
    cout<<"Liczba najbardziej zblizona do sredniej to: "<<minimal<<endl;
    return 0;
}

 

komentarz zamknięcia: we

1 odpowiedź

0 głosów
odpowiedź 17 listopada 2018 przez sefir Dyskutant (8,560 p.)
Zauważ, że policzyłeś różnice pomiędzy średnią a liczbami ale nie sprawdziłeś która różnica jest najmniejsza.
komentarz 17 listopada 2018 przez Sledziux Początkujący (250 p.)
#include <iostream>

using namespace std;

int main()
{
    float numbers[5];
    cout << "Wpisz 5 liczb: ";
    cin>>numbers[1]>>numbers[2]>>numbers[3]>>numbers[4]>>numbers[5];
    float average = (numbers[1]+numbers[2]+numbers[3]+numbers[4]+numbers[5]) /5;
    cout<<"Srednia tych liczb: "<<average<<endl;
    float difference[5];

    for(int i=0; i<=5;i++) difference[i] = average - numbers[i];
    float minimal;

    minimal = difference[0];

    if(minimal<difference[1]) minimal = difference[1];
    if(minimal<difference[2]) minimal = difference[2];
    if(minimal<difference[3]) minimal = difference[3];
    if(minimal<difference[4]) minimal = difference[4];


    cout<<"Liczba najbardziej zblizona do sredniej to: "<<minimal<<endl;

    return 0;
}

 

Podobne pytania

0 głosów
1 odpowiedź 696 wizyt
0 głosów
4 odpowiedzi 1,094 wizyt
pytanie zadane 20 marca 2016 w C i C++ przez Eliro Stary wyjadacz (12,160 p.)
+1 głos
1 odpowiedź 364 wizyt

93,395 zapytań

142,389 odpowiedzi

322,569 komentarzy

62,754 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

VMware Cloud PRO - przenieś swoją infrastrukturę IT do chmury
...