![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Новичок
Джуниор
Регистрация: 03.02.2021
Сообщений: 2
|
![]()
//1. Имеется массив из 10 элементов. Необходимо:
//- найти среднее арифметическое всех элементов массива //- посчитать сумму элементов между максимальным и минимальным элементом массива //- суммировать все четные и перемножить все нечетные элементы массива. //- найти положение максимального элемента массива и если индекс этого элемента – четный, то сдвигаем массив на 3 позиции влево, а если нечетный – на 4 позиции вправо. #include <iostream> #include <time.h> #include <cmath> using namespace std; int main() { srand(time(NULL)); const int N = 10; // размер массива int i,min_val,max_val; int index_min=0; int index_max=0; int sum=0; int nums[N]; for(i=0;i<N;i++) for(i=0;i<N;i++)nums[i]=rand()% 100; for(i=0;i<N;i++) cout<<"Это элемент массива["<<i<<"]: "<<nums[i]<< endl << endl; for (int i = 0; i<N; i++){ if (nums[i] % 2 == 0) // проверка на четность sum += nums[i];} cout << "Сумма четных элементов массива равна : " << sum << endl; int sum3 = sum; for (int i = 0; i<N; i++){ if (nums[i] % 2 != 0) // проверка не четность sum3 *= nums[i];} cout << "Сумма не четных элементов массива перемноженая равна : " << sum3 << endl << endl; int sum2 = 0; for (i=0; i<N; i++) sum2+=nums[i]; cout << "Среднее арифметическое : " << sum2 << endl; min_val=max_val=nums[0]; for(i=1;i<N;i++) { if(nums[i]<min_val) { min_val=nums[i]; index_min=i; } if(nums[i]>max_val) { max_val=nums[i]; index_max=i; } }; cout<<"Номер элемента массива с минимальным значением : "<<index_min<<"("<<min_val<<")"<<en dl; cout<<"Номер элемента массива с максимальным значением: "<<index_max<<"("<<max_val<<")"<<en dl; cout<< endl; int sum1 = 0; if(index_min<index_max) for( i=index_min+1;i<index_max;i++) sum1+=nums[i]; else for(i=index_max+1;i<index_min;i++) sum1+=nums[i]; cout<<"Сумма значений элементов,находящихся между элементами с минимальным и максимальным значением: "<<sum1<< endl; int temp = 0; temp = nums[0]; for(int i = 0; i < 10; i++){ if (nums[i] > temp) { temp = nums[i]; temp = i; } } for(int i = 0; i < 10; i++) if (temp %2 ==0) (nums[i] = nums[i+3]); else for(int i = 0; i < 10; i++) (nums[i] = nums[i-4]); cout <<" массив смещен : " << nums[i] << endl; return 0; } // работает код честно говоря никак, выше указаны условия задачи. кто может откликнитесь, не успеваю и ума не приложу как оптимизировать и заставить его работать. заранее спасибо |
![]() |
![]() |
![]() |
Опции темы | Поиск в этой теме |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Подскажите на С#, как оптимизировать/переписать эту задачу | Aleksandr H. | Помощь студентам | 3 | 12.11.2016 14:17 |
КОЛЛЕГИ ЧТО НЕПРАВИЛЬНО В КОДЕ HTML/CSS? | nikytt | HTML и CSS | 4 | 06.12.2015 21:30 |
Коллеги, что делать? | mrMeerkat | Свободное общение | 113 | 20.09.2014 03:37 |
Коллеги, помогите с решением! | Jekeel2 | C# (си шарп) | 3 | 29.12.2013 20:11 |
Как оптимизировать? | А)-(дрей | Microsoft Office Excel | 31 | 12.04.2011 21:38 |