Руденко Н.А., Семенова Н.В. Алгоритмы обработки одномерных массивов на языке С++
(→Обработка одномерных массивов на языке С++) |
(→Обработка одномерных массивов на языке С++) |
||
Строка 46: | Строка 46: | ||
|----- | |----- | ||
| Найти сумму значений отрицательных элементов. | | Найти сумму значений отрицательных элементов. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
Каждый третий элемент увеличить на 5. | Каждый третий элемент увеличить на 5. | ||
| вставить программный код | | вставить программный код | ||
+ | int S=0; | ||
+ | int p=1; | ||
+ | for(i=0;i<n;i++) | ||
+ | if(Mas[i]<0) | ||
+ | S=S+Mas[i]; | ||
+ | cout<<"Сумма="<<S<<"\n"; | ||
+ | |||
+ | for(i=0;i<n;i++) | ||
+ | if(Mas[i]%2==0) | ||
+ | { | ||
+ | p=p*Mas[i]; | ||
+ | } | ||
+ | cout<<"Количество="<<p<<"\n"; | ||
+ | |||
+ | for(i=0;i<n;i=i+3) | ||
+ | Mas[i]=Mas[i]+5; | ||
+ | for(i=0;i<n;i++) | ||
+ | cout<<"Mas["<<i<<"]="<<Mas[i]<<"\n"; | ||
| вставить изображение блок-схемы | | вставить изображение блок-схемы | ||
|----- | |----- |
Версия 16:57, 5 апреля 2016
Обработка одномерных массивов на языке С++
Условие задачи | Программный код | Блок-схема | |
---|---|---|---|
Задан массив Mas размерности n.
Первая половина массива заполнена с клавиатуры, вторая - случайными числами из диапазона [-10,15]. Вывести элементы массива в строчку. Найти сумму всех элементов массива. |
#include <iostream>
using namespace std; void main() { srand(time(NULL)); setlocale(LC_ALL, "Russian"); int const n = 20, i; int Mas[n]; for (i = 0; i < n / 2; i++) { cout << "Введите" << i << "элемент массива"; cin >> Mas[i]; } for (i = n\2; i < n; i++) Mas[n] = -10 + rand() % (15 - (-10)+1); for (i = 0; i < n; i++) cout << "Mas[" << i << "]" << Mas[i]; int s = 0; for (i = 0; i < n; i++) s = s + Mas[n]; cout << "сумма=" << s; |
вставить изображение блок-схемы | |
Найти сумму значений отрицательных элементов.
Каждый третий элемент увеличить на 5. |
вставить программный код
int S=0; int p=1; for(i=0;i<n;i++) if(Mas[i]<0) S=S+Mas[i]; cout<<"Сумма="<<S<<"\n"; for(i=0;i<n;i++) if(Mas[i]%2==0) { p=p*Mas[i]; } cout<<"Количество="<<p<<"\n"; for(i=0;i<n;i=i+3) Mas[i]=Mas[i]+5; for(i=0;i<n;i++) cout<<"Mas["<<i<<"]="<<Mas[i]<<"\n"; |
вставить изображение блок-схемы | |
Найти произведение положительных элементов, стоящих на четных местах. Найти количество элементов, равных нулю. Вывести номера элементов, значения которых больше 10. |
int p = 1,i;
for (i = 0; i <= 14; i=i+2) if (Mas[i] > 0) p = p*Mas[i]; cout « "произведение положительных чисел, стоящих а четных местах=" « p«endl; int k = 0; for (i = 0; i <= 14; i++) if (Mas[i] == 0) k++; cout « "количество элементов, равных нулю =" « k«endl; for (i = 0; i <= 14; i++) if (Mas[i] > 10) cout « i « " элемент больше 10"«endl; |
||
Найти максимальный элемент массива и его порядковый номер. | Файл:4234234.jpg
Найти минимальный элемент и его порядковый номер среди положительных элементов. |
вставить программный код | вставить изображение блок-схемы |
Вычислить сумму четных элементов до первого нулевого элемента. | int i=0, S=0;
while(Mas[i]!=0 && i <= n-1) {if(Mas[i]%2==0) S+=Mas[i]; i++;} cout << "Сумма четных эл. до первого нулевого: " << S << endl; |
Файл:3345hty.JPG
| |
Отсортировать первые 15 элементов массива по возрастанию методом пузырька
Отсортировать все элементы массива по убыванию методом поиска максимального/минимального элемента |
Файл:Test.JPG Файл:Test2.JPG | Файл:Длывыв.jpgФайл:Дмитрий ыфвафыа.JPG | |
Найти среднее арифметическое элементов массива, расположенных между максимальным и минимальным элементами
Сжать массив, выбросив из него каждый второй элемент. |
вставить программный код | вставить изображение блок-схемы |