Niezadeklarowana zmienna?
Ostatnio zmodyfikowano 2018-05-19 18:31
sair Temat założony przez niniejszego użytkownika |
Niezadeklarowana zmienna? » 2018-05-18 18:09:59 Witam, mam problem. Postanowiłem po ponad 6msc przerwie wrócić do zabawy z C++ i już na początek natrafiłem na problem z sortowaniem bąbelkowym. identifier "zamiana" is undefined 'zamiana': undeclared identifier #include <string> #include <fstream> #include <iostream> #include <conio.h> using namespace std;
void sortuj( int t[] ) { int pomoc; int length = sizeof( t ) / sizeof( int ); do { int zamiana = 0; for( int i = 0; i < length; i++ ) if( t[ i ] > t[ i + 1 ] ) { pomoc = t[ i ]; t[ i ] = t[ i + 1 ]; t[ i + 1 ] = pomoc; zamiana++; }; } while( zamiana != 0 ); };
int main() { int t[ 5 ]; for( int i = 0; i < 5; i++ ) { cin >> t[ i ]; } sortuj( t ); _getch(); return 0; } Prosiłbym o jakieś wskazówki :) |
|
YooSy |
» 2018-05-18 19:15:11 zmienna zadeklarowana jest wewnątrz pętli i jest niewidoczna poza tą pętlą. Zasięg zmiennej jest ograniczony do przestrzeni między klamrami, w których jest zadeklarowana, a warunek pętli do { } while() jest już poza tą klamrą. |
|
sair Temat założony przez niniejszego użytkownika |
» 2018-05-18 19:21:44 Więc jak to rozwiązać? |
|
YooSy |
» 2018-05-18 19:23:15 Zadeklarować zmienna przed pętlą? |
|
sair Temat założony przez niniejszego użytkownika |
» 2018-05-18 19:33:25 Robiłem tak i nadal ten błąd |
|
YooSy |
» 2018-05-18 19:42:52 Aby na pewno? int zamiana = 0; do { for( int i = 0; i < length; i++ ) if( t[ i ] > t[ i + 1 ] ) { pomoc = t[ i ]; t[ i ] = t[ i + 1 ]; t[ i + 1 ] = pomoc; zamiana++; }; } while( zamiana != 0 );
... z tym, że teraz wykonanie choćby jednego obrotu pętli for spowoduje uruchomienie nieskończonej pętli while . Co ma robić ta zmienna, bo jej nazwa niczego nie zdradza? Jest użyta w celu zakończenia pętli, ale...? |
|
sair Temat założony przez niniejszego użytkownika |
» 2018-05-18 19:55:28 Jeśli liczba zamian będzie rowna 0 to znaczy że tablica jest posortowana |
|
sair Temat założony przez niniejszego użytkownika |
» 2018-05-18 20:25:17 Jakieś sugestie jak to rozwiązac? :/ |
|
« 1 » 2 |