От пользователя: размерность массива, делитель, массив. Пользователь заполняет массив.
Далее проходим по массиву, находим "группки" чисел, которые делятся нацело на делитель, данный пользователем. Находим i (индекс, с которого идут делящиеся числа). Записываем, сколько этих чисел было. Выводим всю информацию.
#include <iostream>
using namespace std;
int main() {
setlocale (LC_ALL, "Russian");
int counter[1000] = {0};
int startIndex[1000];
int max = 0;
int indexMax = 0;
int sCounter = 0;
int finishIndex[1000];
bool is = 0;
int N;
cin >> N;
int a[N];
int del = 0;
cout << "Делитель: ";
cin >> del;
for(int i = 0; i<N; ++i) {
cin >> a[i];
}
for(int i = 0; i<N; ++i) {
if(a[i]%del==0) {
if(is==0) {
startIndex[sCounter]=i; // записываем стартовую позицию
is=1;
}
++counter[sCounter]; // прибавляем счетчик
}
else {
finishIndex[sCounter]=i; // финишная позиция
is=0;
++sCounter;
}
}
for(int i = 0; i<1000; ++i) {
if(counter[i]>max) {
max = counter[i];
indexMax=i;
}
}
cout << "Числа с " << startIndex[indexMax]+1 << " по " << startIndex[indexMax]+max <<
endl << " делятся нацело на " << del << " " << max << " раз подряд";
}
class Program
{
static void Main(string[] args)
{
Console.WriteLine("[Введите число]\n");
int a = Int32.Parse(Console.ReadLine());
int a2 = a * a;
int a4 = a2 * a2;
int a8 = a4 * a4;
int a16 = a8 * a8;
int result = a16 * a8 * a4;
Console.WriteLine("\nИсходное число: " + a + " \nЧисло в 2-й степени:" + a4 + " \nЧисло в 8-й степени: " + a8 + " \nЧисло в 16-й степени: " + a16 + " \nЧисло в 28-й степени: " + result + "");
}
}
защита от оп. соед., контроль и фильтрация