Дан целочисленный массив с количеством элементов n. Напечатать те его элементы, индексы...

0 голосов
170 просмотров

Дан целочисленный массив с количеством элементов n. Напечатать те его элементы, индексы которых являются степенями двойки(1,2,4,8,16,..)
Помогите решить в С++, пожалуйста


Информатика (50 баллов) | 170 просмотров
Дан 1 ответ
0 голосов

#include
#include
#include
int main()
{
    using namespace std;
    const int n = 10;  //количество элементов массива
    int Arr[n];

    //как-нибудь заполняем массив
    srand(time(0));
    int i;
    for (i = 0; i < n; ++i)
        Arr[i] = rand() % (n * n) + 1;

    //выведем его на экран
    for (i = 0; i < n; ++i)
        cout << Arr[i] << "   ";<br>    cout << endl;<br>
    int p;
    for (i = 1; i < n; ++i)
    {
        p = i;
        while (p % 2 == 0)
            p /= 2;
        if (p == 1)
            cout << "Arr[" << i << "] = " << Arr[i] << endl;<br>    }
    cout << endl;<br>    return 0;
}

(1.1k баллов)