Cześć wszystkim.
Mam tablicę dynamiczną której rozmiar ustala użytkownik, a elementy są generowane losowo z przedzialu, powiedzmy, 1-100. Następnie z tej tablicy chciałbym wybrać elementy z przedziału (srednia - odchylenie, srednia + odchylenie) i wpisac je do nowej tablicy. Sęk w tym że za każdym razem rozmiar nowej tablicy będzie inny i nie wiem jak go określić. Nie wiem też czy dobrze przekazuje dane z pierwszej tablicy do drugiej bo te wskaźniki dla mnie to jakaś czarna magia. Poniżej funkcja tworzenia drugiej tablicy.
//wyznacza przedzial, tworzy nowa tablice
int*przedzial(int*tab, int n, float sre, float odch)
{
float left = sre - odch; //lewa granica przedzialu
float right = sre + odch; //prawa granica przedzialu
//int count = 0;
int *tab2 = new int[n];
int wsk = 0;
{
for (int i = 0; i < n; i++)
tab2[n] = 0;
}
for (int i = 0; i < n; i++)
{
if (tab[i] > left && tab[i] < right)
{
tab2[wsk] = tab[i];
wsk++;
}
}
return tab2;
}
Następnie chciałbym tę tablicę wyświetlić i w sumie pokazuje te elementy ale wraz z tymi niepotrzebnymi liczbami na końcu, które pojawiają się bo rozmiar nie jest dostosowany (chyba :p)
Wklejam też całą treść zadania:
Pytanie dotyczy podpunktu "c". Pewnie cała moja koncepcja rozwiązania jest zla, ale dlatego pytam tutaj.
Z gory dzięki!