Другие языки программирования и технологии

как записать эту программу в с++??

Дан массив чисел В[0:N]. Найти сумму и произведение положительных элементов массива, расположенных до максимального элемента. числа массива вводятся с клавиатуры. Напишите пожалуйста саму программу!
#include <iostream>
using namespace std;

int main()
{
locale::global(locale(""));
const int size = 10;
long long int a[size];
intcount = 0;
do
{
cout << " Введите a[" << count << "] = ";
cin >> a[count];
count++;
}
while (count < size);
system("cls");
for (int n = 0; n < size; n++) cout << a[n] << ' ' ;
cout << endl;
long long int max = a[0];
int index = 0;
for (int n = 1; n < size; n++)
{
if (max < a[n])
{
max = a[n];
index = n;
}
}
cout << " Максимум => a[" << index << "] = " << max << endl;
long long int sum = 0, mult = 1;
count = 0;
bool flag = true;
if (index == 0) flag = false;
else
{
for (int n = 0; n < index; n++)
{
if (a[n] > 0)
{
count++;
sum += a[n];
mult *= a[n];
}
}
if (count == 0) flag = false;
}
if (flag)
{
cout << " Сумма равна: " << sum << endl
<< " Произведение равно: " << mult;
}
else cout << "\a Без вариантов! ";
cin.get(); cin.get();
return 0;
}
Владимир Струков
Владимир Струков
75 101
Лучший ответ
лень писать многабукф поэтому вот тебе на питоне

n = int(input())
a = [int(input()) for i range(n)]
ind, a = a.index(max(a), [el for el in a[:a.index(max(a)] if el > 0]
print(sum(a))
print(reduce(lambda x, y: x*y, a, 1))
чтоО?!??

Похожие вопросы