Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Błąd w programie liczącym średnią w tablicy

rubensdb 27 Gru 2010 19:33 912 5
  • #1 27 Gru 2010 19:33
    rubensdb
    Poziom 9  

    Proszę o pomoc!

    pokazuje mi taki błąd: Błąd w programie liczącym średnią w tablicy
    nie wiem co jest źle.


    Code:
    #include <stdlib.h>
    
    #include <stdio.h>
    #include <math.h>
    #define N 10

    int x,y,c,z,d,k,all,liczba;

    int main()
    {

    int tab1[N];


    for(z=0;z<10;z++) //zerowanie
    tab1[z]=0;

    while(liczba=k)
    {
    all=1;
    all+=1;

    printf("Podaj elementy tablicy: ");
    scanf("%d",&liczba);
    tab1[c]=liczba;                        //zapis do tablicy
    }
    for(x=0;x<all;x++)
    y+=tab1[x];
    y=y/all;

    printf("sednia tablicy = %d\n",y);



        system("pause");
    }

    0 5
  • #2 27 Gru 2010 19:43
    przemo_wielki
    Poziom 23  

    Co ma oznaczać while(liczba=k){} ?

    0
  • #3 27 Gru 2010 19:47
    rubensdb
    Poziom 9  

    while(liczba=k){} - wczytuje liczby do tablicy dopóki nie pojawi się k jak koniec

    0
  • Pomocny post
    #4 27 Gru 2010 19:48
    Eagle
    Poziom 23  

    W języku C /C++ aby porównać liczby trzeba stosować == użycie pojedynczego = to przypisanie.
    Po drugie korzystasz wielokrotnie ze zmiennych które nie są za inicjalizowane np:

    tab1[c]=liczba;

    ile wynosi zmienna c na samym początku, jeśli to VS to pewnie 0xcccccccc

    zmienna c również nie jest zwiększana. Ile wynosi k ? Deklarujesz użycie x i d, gdzie z nich korzystasz ?

    Popraw i powinno działać. Wytrwałości.

    Eagle

    0
  • Pomocny post
    #5 27 Gru 2010 19:53
    przemo_wielki
    Poziom 23  

    W takim bądź razie poczytaj o typach danych i ich różnicach w szczególności int orac char, następnie o operatorach: przypisania i porównania. A błąd dotyczy dzielenia przez 0 które w tym przypadku się wykonuje.

    0
  • #6 27 Gru 2010 19:56
    rubensdb
    Poziom 9  

    Już rozumiem. Dzięki za pomoc.

    0