[C++] Za dużo najmniejszych wartości w pętli for.
Ostatnio zmodyfikowano 2018-03-24 19:33
ozjaszka1 Temat założony przez niniejszego użytkownika |
[C++] Za dużo najmniejszych wartości w pętli for. » 2018-03-24 14:53:23 Hej, mam problem z zaliczeniem wartości jako najmniejszej i zamianą jej na licznik, wklejam fragment kodu: int imin = 9999;
for( int i = 0; i < w; i++ ) { if( X[ i ][ i ] < imin ) { imin = X[ i ][ i ]; X[ i ][ i ] = licznik; } else X[ i ][ i ] != licznik; }
program ma za zadanie zamienić jedną, najmniejszą z liczb na licznik, ale zawsze wstawia imin podczas pierwszej iteracji, jeżeli każda kolejna liczba jest mniejsza od siebie licznik wypełnia całą przekątną, jeżeli liczba druga jest większa od pierwszej to na jej miejsce nie wstawia nic. Niestety, bez przypisania wartości do imin program nie wyznaczy żadnego elementu jako imin. Czy jest jakiś sposób na rozwiązanie tego problemu? |
|
pekfos |
» 2018-03-24 14:56:05 Wiec dlaczego zmieniasz zawartość tablicy w pętli? |
|
ozjaszka1 Temat założony przez niniejszego użytkownika |
» 2018-03-24 15:16:13 Kiedy zamieniam imin na licznik poza pętlą zawsze zamienia mi wartość podczas pierwszej iteracji, wstawię też taki kod: int imin = 9999;
for( int i = 0; i < w; i++ ) { if( X[ i ][ i ] < imin ) imin = X[ i ][ i ]; } X[ i ][ i ] = licznik;
|
|
pekfos |
» 2018-03-24 15:25:29 Teraz te przypisanie nie ma nic wspólnego z poprzedzającą je pętlą. |
|
ozjaszka1 Temat założony przez niniejszego użytkownika |
» 2018-03-24 18:54:33 Jeszcze udało mi się wymyśleć taką wersję, ale nie działa :( int imin = X[ 0 ][ 0 ];
for( int i = 0; i < w; i++ ) { if( X[ i ][ i ] < imin ) imin = X[ i ][ i ]; } imin = licznik;
|
|
pekfos |
» 2018-03-24 19:33:35 To niech teraz imin będzie wskaźnikiem i będzie działać. |
|
« 1 » |