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

Wyjaśnicie mi co jest złego w tym kodzie? (SPOJ - Średnia Arytmetyczna)

Aruba Cloud - Virtual Private Server VPS
0 głosów
318 wizyt
pytanie zadane 5 września 2019 w C i C++ przez Hyziu Nowicjusz (160 p.)
#include <iostream>
#include <cmath>

using namespace std;

int najblizsza;
float srednia;
int suma;
int ile_testow;

int main()
{
    cin >> ile_testow;

    for (int i = 1; i <= ile_testow; i++)
    {

    int ile_liczb;

    cin >> ile_liczb;

    int liczby [ile_liczb];
    int wyniki [ile_liczb];

    for (int i = 0; i <= ile_liczb; i++)
    {
        cin >> liczby [ile_liczb];
        suma += srednia;
    }

    srednia = suma / ile_liczb;

    for (int i = 0; i <= ile_liczb; i++)
    {
        wyniki [ile_liczb] = abs(liczby [ile_liczb] - srednia);
    }

    najblizsza = wyniki[0];

    for (int i = 1; i <= ile_liczb; i++)
    {
        if( wyniki [i] < najblizsza )
        {
            najblizsza = wyniki[i];
        }
    }

        cout << najblizsza;
    }

    return 0;
}

Jak w temacie. Powiecie mi czemu Sędzia nie akceptuje mojego kodu? Zrobiłem coś źle konceptualnie? Jak to ugryźć? Może jakieś mniejsze niedociągnięcie, co? Kod dołączony.

komentarz 5 września 2019 przez mokrowski Mędrzec (158,200 p.)
Załączaj zawsze link do zadania.
komentarz 5 września 2019 przez Velta Maniak (52,830 p.)
Rozmiar tablicy musi być statyczny.
komentarz 7 września 2019 przez Hyziu Nowicjusz (160 p.)

@mokrowski, okej, od teraz będę tak robił. smiley 

komentarz 7 września 2019 przez Hyziu Nowicjusz (160 p.)

@Velta, dobrze, zastosuję się do tego. Dzięki.

2 odpowiedzi

0 głosów
odpowiedź 5 września 2019 przez Inn Gaduła (4,300 p.)
Cześć, próbowałeś chociaż wprowadzić przykładowane dane ?
komentarz 5 września 2019 przez Inn Gaduła (4,300 p.)
edycja 5 września 2019 przez Inn

Zacznij od tego a następnie staraj się likwidować napotkane błędy. Na start mogę wskazać:

  •  Zmienne globalne.
  •  Brakuje inicjalizacji sumy.
  •  W pierwszej pętli wykonujesz ( suma += srednia ) bez przypisania lub inicjalizacji wartości zmiennej "srednia".
komentarz 7 września 2019 przez Hyziu Nowicjusz (160 p.)
Okej. W takim razie tak zrobię. Dziękuję.
0 głosów
odpowiedź 5 września 2019 przez j23 Mędrzec (195,240 p.)
  • Linie 6-9:  Te definicje powinny być w funkcji main.
  • Linie 22 i 23: to nie są poprawne definicje tablic w C++.
  • nie zerujesz suma dla każdego testu.

 

komentarz 7 września 2019 przez Hyziu Nowicjusz (160 p.)
Dobrze wiedzieć, dzięki.

Podobne pytania

0 głosów
1 odpowiedź 1,086 wizyt
pytanie zadane 14 lipca 2019 w C i C++ przez Padomen Początkujący (260 p.)
0 głosów
2 odpowiedzi 451 wizyt
0 głosów
1 odpowiedź 653 wizyt

93,335 zapytań

142,331 odpowiedzi

322,415 komentarzy

62,670 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

Wprowadzenie do ITsec, tom 1 Wprowadzenie do ITsec, tom 2

Można już zamawiać dwa tomy książek o ITsec pt. "Wprowadzenie do bezpieczeństwa IT" - mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy aż 15% zniżki! Dziękujemy ekipie Sekuraka za fajny rabat dla naszej Społeczności!

...