Осталось сделать: 2)Дан одномерный массив A(N).Сформировать массив B(K)из элементов массива A(N)индексы которых являются числа Фибоначи (1,2,3,5,8,13 и т.д. Fi = Fi-1 + Fi-2)
Ну как то так:
Код:
int _tmain(int argc, _TCHAR* argv[])
{
int mas[99], nmas[99], fob[99];
fob[0]=1;
int x, y=0, f1=0, f2=1, j=0;
cin >> x;
while (j!=x) {
f1=f2;
f2=fob[j];
fob[j+1]=f1+f2;
j++;
}
for (int i = 0; i < x; i++) {
mas[i] = rand()%10+1;
for (int c = 0; c <=j; c++){
if (i == fob[c]){nmas[y] = mas[i]; y++;
break;}
}
}
cout << endl;
for (int i = 0; i < y; i++)
cout << nmas[i] << " ";
return 0;
}
Можно наверное без массива фобиначчи обойтись, но помоему лишняя нагрузка.