analiza kodu rozdział 44 poziom 5
Ostatnio zmodyfikowano 2020-04-23 20:52
wirusomaniak Temat założony przez niniejszego użytkownika |
analiza kodu rozdział 44 poziom 5 » 2020-04-23 12:57:52 #include <iostream> using namespace std;
int main() { int * tablica = nullptr, rozmiar = 0; std::cout << "Podawaj liczby, 0 konczy wczytywanie.\n"; while( true ) { int liczba[ 2 ]; for( int i = 0; i < 2; i++ ) { std::cin >> liczba[ i ]; if( liczba[ i ] == 0 ) break; if( liczba[ 1 ] == 0 ) rozmiar--; } if( liczba[ 0 ] == 0 ) break; int * nowa = new int[ rozmiar + 2 ]; for( int i = 0; i < rozmiar; ++i ) { nowa[ i ] = tablica[ i ]; } nowa[ rozmiar ] = liczba[ 0 ]; if( liczba[ 1 ] != 0 ) nowa[ rozmiar + 1 ] = liczba[ 1 ]; delete[] tablica; tablica = nowa; if( liczba[ 1 ] == 0 ) { rozmiar++; break; } rozmiar += 2; } std::cout << "Te same liczby, ale odwrotnie!\n"; for( int i = rozmiar - 1; i >= 0; --i ) std::cout << tablica[ i ] << ' '; delete[] tablica; }
"Zmodyfikuj przykładowy kod tak, aby nowa tablica nie była tworzona za każdym razem, gdy dodawany jest nowy element." Moje pytanie brzmi czy mój program spełnia warunki zadania? Dziękuję za pomoc. |
|
pekfos |
» 2020-04-23 20:52:19 Program nie działa poprawnie. |
|
« 1 » |