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

Дан целочисленный массив с количеством элементов n. Напечатать те его элементы, индексы которых являются степенями двойки(1,2,4,8,16,..) Помогите решить в С++, пожалуйста
Гость
Ответ(ы) на вопрос:
Гость
#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] << "   ";     cout << endl;     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;     }     cout << endl;     return 0; }
Не нашли ответ?
Ответить на вопрос
Похожие вопросы