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

C++ язык программирования

Посчитать сумму и произведение всех отрицательных нечетных элементов массива заменить их нулями вывести значение суммы произведений и получение массива
Andrey Pak
Andrey Pak
69
да, на плюсах такое можно написать
вопрос в чём?
ВМ
Владимир Мальцев
6 630
Лучший ответ
Andrey Pak Само решение
Даа фигово когда нужно учиться, нихрена не понимаешь и оно не нужно :) Еще и задачи составляют по тупому "вывести значение суммы произведений и получение массива" Суммы чего или суммы произведений чего и в конце получение массива, может полученного или получить массив заменив значениями ничего не понятно. Можно по тупому вот так чтоб поверили:

#include

int _tmain(int argc, _TCHAR* argv[])
{
int arr[15];
int summa = 0;
int proizv = 1;
int summaproizv = 0;

for (int i = 0; i < 15; i++)
{
arr[i] = -10 + rand() % (20);
}

for (int i = 0; i < 15; i++)
{
int chislo = arr[i];
if (chislo < 0)
{
if (chislo % 2 == 1)
{
summa = summa + chislo;
proizv = proizv * chislo;
if (proizv > 1)
{
summaproizv = proizv + proizv * chislo;
}
}
}
}

for (int i = 0; i < 15; i++)
{
std::cout << arr[i] << ",";
}

return 0;
}
Странно что такие задачи вводят вас в ступор, просто перебирать массив с проверкой на четность и отрицательность по типу

if (arr[index] < 0 && arr[index] % 2 != 0) {}

в противном случае
arr[index] = 0;
Далее создаем переменную где будет наша будущая сумма (к примеру int sumPos ). Обратно бежим по массиву с проверочкой на 0
if (arr[index] != 0) {
sumPos += arr[index]
} else {
continue
}
можно было и не писать continue, да и проверка на 0 не нужна, т. к все не нужные элементы и так нули, но так думаю понятней будет. А дальше реализуй. Легче всего списать готовую работу, если уже сам догадаться не можешь попроси кого-то направить себя в нужном направлении.