Предмет: Информатика,
автор: Pika4yshka
Вывести на экран все числа заданной последовательности, индексы которых есть степени двойки. Определить в заданной последовательности целых
чисел количество чисел, которые являются степенью двойки.
Нужно исправить этот код. Проблема в степени 2.
#include
using namespace std;
int main()
{
int array[100];
int i, size,n;
cout << "Enter size: ";
cin >> size;
for (i = 0; i < size; i++ )
{
cout << "array[" << i + 1 << "]=";
cin >> array[i];
}
for (i = 0; i < size ; i++)
if (i && (i - 1) == 0)
cout << "\nchislo: " << array[i] << endl;
return 0;
}
Ответы
Автор ответа:
1
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
int array[100];
int i, size, n, count = 0;
cout << "Enter size: ";
cin >> size;
for (i = 0; i < size; i++)
{
cout << "array[" << i + 1 << "]=";
cin >> array[i];
}
for (i = 0; i < size; i++)
{
n = log2(i + 1);
if (pow(2, n) == (i + 1))
{
cout << "\nЧисло: " << array[i] << endl;
count++;
}
}
cout << "Количество целых чисел с степенью двойки: " << count << endl;
return 0;
}
Похожие вопросы
Предмет: Другие предметы,
автор: koshmfn37540998
Предмет: Физика,
автор: sonia1388
Предмет: Алгебра,
автор: xpyiiikatop
Предмет: История,
автор: edinorozkasrozkom