Rozdział 44 Zadanie domowe
Ostatnio zmodyfikowano 2019-04-21 23:05
Mational Temat założony przez niniejszego użytkownika |
Rozdział 44 Zadanie domowe » 2019-04-21 20:56:23 Proszę o sprawdzenie kodu, gdyż nie wiem, czy dobrze zrozumiałem polecenie. #include <iostream>
using namespace std;
int main() { int * tablica = nullptr, rozmiar = 0; cout << "Podaj liczby, 0 konczy wczytywanie\n\n"; while( true ) { int liczba; cout << "Podaj liczbe: "; cin >> liczba; if( liczba == 0 ) break; if( rozmiar % 2 == 0 ) { cout << "Wykonalam sie" << endl; int * nowa = new int[ rozmiar + 2 ]; for( int i = 0; i < rozmiar; i++ ) nowa[ i ] = tablica[ i ]; nowa[ rozmiar ] = liczba; delete[] tablica; tablica = nowa; } else { tablica[ rozmiar ] = liczba; } rozmiar++; } for( int i = rozmiar - 1; i >= 0; i-- ) cout << tablica[ i ] << endl; delete[] tablica; return 0; }
|
|
pekfos |
» 2019-04-21 21:16:21 Zmodyfikuj przykładowy kod tak, aby nowa tablica nie była tworzona za każdym razem, gdy dodawany jest nowy element. |
No i nie jest tworzona za każdym razem. Jest co drugi raz. |
|
Mational Temat założony przez niniejszego użytkownika |
» 2019-04-21 21:20:49 Czyli o to chodziło ? Mógłbym tym sposobem napisać, żeby np. tworzyła się za 10 razem, tak ? |
|
nanoant20 |
» 2019-04-21 22:34:41 Mógłbym tym sposobem napisać, żeby np. tworzyła się za 10 razem, tak ? |
Pamięć ma zostać alokowana wtedy, kiedy tablica zostanie wypełniona wszystkimi elementami. |
|
pekfos |
» 2019-04-21 23:05:13 Czyli o to chodziło ? Mógłbym tym sposobem napisać, żeby np. tworzyła się za 10 razem, tak ? |
Mógłbyś tak napisać i będzie działać. A czy o to chodziło? Na pewno nie jest to rozwiązanie o którym myślałem formułując zadanie, jednak jak najbardziej spełnia wytyczne. nanoant20, nie wiem czemu piszesz o tym tu, zamiast wedytować to w poprzedni temat. Przynajmniej byłby jakiś kontekst. R. 44 - zadanie domowe - czy o to chodziło? |
|
« 1 » |