Największy i najmniejszy element w tablicy

0

Drodzy użytkownicy !

Mam mały problem z moim kodem, który ma wskazywać najmniejszą i największą liczbę z tablicy. Jestem niemalże pewny że tak ma to wyglądać ,ale niestety to nie działa.Chciałbym Was
prosić o radę , co mógłbym zmienić w kodzie . Gdy program działa, i wpisuje liczby , to cały czas niezależnie jaką cyfre wpisuje , największa i najmniejsza liczba wynosi 0

#include <iostream>
#include <windows.h>
#include <cstdlib>

using namespace std;
int liczba[10] ,najw,najm;
int main()

{

    cout << "Siemanko podaj 10 dowolnych liczb " << endl;
najw=liczba[0];
najm=liczba[0];
    for (int i = 0;i<10;i++)
    {


        cout<<"Podaj liczb:   "<<i+1<<endl;
        cin>> liczba[i];
        if(liczba[i]>najw)

         liczba[i]=najw;
         cout<<" Oto najwieksza liczba:   "<<najw<<endl;

        if(liczba[i]<najm)

            liczba[i]=najm;
            cout<<"Oto najmniejsza liczba:   "<<najm<<endl;





    }


    return 0;
}
0

Jeszcze nie podałeś liczba[0], a już przypisujesz ją do zmiennych.

0
#include <windows.h>
#include <cstdlib>

using namespace std;
int liczba[10] ,najw,najm;
int main()

{

    cout << "Siemanko podaj 10 dowolnych liczb " << endl;

    for (int i = 0;i<10;i++)
    {


        cout<<"Podaj liczb:   "<<i+1<<endl;
        cin>> liczba[i];
najw=liczba[0];
najm=liczba[0];
        if(liczba[i]>najw)

         liczba[i]=najw;
         cout<<" Oto najwieksza liczba:   "<<najw<<endl;

        if(liczba[i]<najm)

            liczba[i]=najm;
            cout<<"Oto najmniejsza liczba:   "<<najm<<endl;





    }


    return 0;
}
0
Bartosz Żelek napisał(a):

Jeszcze nie podałeś liczba[0], a już przypisujesz ją do zmiennych.

Niestety teraz pokazuje się tylko
pierwsza podana liczba , inne podane liczby nie są w ogóle uwzględniane

0

Masz złe przypisanie w pętli

liczba[i]=najw;

Zamień na

najw=liczba[i];
0

Niestety teraz dzieje się coś takiego . Liczby jakby nie są zapamiętywane.

Siemanko podaj 10 dowolnych liczb
Podaj liczb: 1
44
Oto najwieksza liczba: 44
Oto najmniejsza liczba: 44
Podaj liczb: 2
21
Oto najwieksza liczba: 44
Oto najmniejsza liczba: 21
Podaj liczb: 3
33
Oto najwieksza liczba: 44
Oto najmniejsza liczba: 33
Podaj liczb: 4
555
Oto najwieksza liczba: 555
Oto najmniejsza liczba: 44
Podaj liczb: 5
-12
Oto najwieksza liczba: 44
Oto najmniejsza liczba: -12
Podaj liczb: 6
-233
Oto najwieksza liczba: 44
Oto najmniejsza liczba: -233
Podaj liczb: 7
11
Oto najwieksza liczba: 44
Oto najmniejsza liczba: 11
Podaj liczb: 8

#include <iostream>
#include <windows.h>
#include <cstdlib>

using namespace std;
int liczba[10] ,najw,najm;
int main()

{

    cout << "Siemanko podaj 10 dowolnych liczb " << endl;

    for (int i = 0;i<10;i++)
    {


        cout<<"Podaj liczb:   "<<i+1<<endl;
        cin>> liczba[i];
    najw=liczba[0];
    najm=liczba[0];
        if(liczba[i]>najw)


     najw=liczba[i];
         cout<<" Oto najwieksza liczba:   "<<najw<<endl;


        if(liczba[i]<najm)

           najm=liczba[i];
            cout<<"Oto najmniejsza liczba:   "<<najm<<endl;








    }


    return 0;
}
0

Wrzuć

najw=liczba[0];
najm=liczba[0];

w ifa:

if (i == 0) { tutaj }

Albo wyrzucić to poza pętle i iteruj od i = 1.

1 użytkowników online, w tym zalogowanych: 0, gości: 1