mógłby ktoś odszyfrować ten zapis?? próbuję napisać pewien program..szukam informacji. Znalazlam to co mnie interesuje tylko nie wiem jak rozszyfrować ten zapis. Nie wiem o co w nim chodzi, a nie został wyjaśniony. PROSZĘ O POMOC :)
int ilepowtorzen=1000;
for (int n=1000;n<=10000000;n+=100)
{ srand(time(NULL)); //funkcja poprawiajaca dzialanie rand()
int* tab=new int[n];
for(int i=0; i<n; i++)
{
tab[i]=rand();
}
0
2
Te zapis jest akurat całkiem niezaszyfrowany. Po prostu trzeba nieco znać C++.
W ogólności ten kod próbuje zaalokować 1.82 TiB pamięci i wypełnić ją losowymi liczbami pozostawiając ogromny wyciek pamięci. Chyba, że za klamrą wewnętrznego for
jest coś innego niż klamra zewnętrznego for
.
Dokładniej: alokuje tablicę 1000 elementów int
i wypełnia losowymi wartościami. Potem 1100 elementów, potem 1200, itd, aż do 10000000 elementów. Tablica nigdzie nie jest używana i dostęp do wskaźnika tab
jest tracony w każdej kolejnej iteracji.
Co jest dalej, bo to po prostu niczego nie robi.
2
srand(time(NULL)); // ustaw ziarno początkowe generatora liczb PSUEDOlosowych
for (int n=1000;n<=10000000;n+=100) { iteruj od 1000 do 10000000 co 100
// srand(time(NULL)); //tego tu nie powinno być, to się robi tylko raz na początku i koniec
int* tab=new int[n]; // twórz tablicę na stercie
for(int i=0; i<n; i++) { // wypełnij tablicę losowymi wartościami
tab[i]=rand();
}
// jakieś operacje na tej tablicy
...
delete tab; // zwolnij tablicę
}