5 отчёт Смолева В.А
..docxПоволжский Государственный Университет Телекоммуникаций и Информатики
Кафедра ПОУТС
Лабораторная работа №5
Одномерные массивы
Выполнила :
Студент гр. ИСТ 74У
Глушенков М.В.
Проверили:
Д.т.н., проф. Лиманова Н.И.
Асс. Горелов Г.А.
Самара 2017
Задание: Научиться работать с массивами, производить над ними разные действия.
Вариант 14
В одномерном массиве, состоящем из п вещественных элементов, вычислить:
— количество элементов массива, равных нулю;
— сумму элементов массива, расположенных после минимального элемента.
Упорядочить элементы массива по возрастанию.
Листинг программы
#include "stdafx.h"
#include <stdlib.h> // подключаем qsort
#include "iostream"
#include "math.h"
using namespace std;
//функция для сортировки по возрастанию
int comp1 (const void * a, const void * b) //const относится к данным
{
return ( *(double*)a - *(double*)b ); //указатель на параметр а и параметр b
}
int main()
{
setlocale(LC_ALL,"");//Вывод кириллицы
const int n=20;
int kol_m, i, c, time; double mas[n];
cout << "Введите количество элементов массива: "<<endl;
cin >> kol_m;
cout << "Введите элементы массива: "<<endl;
for (i=0; i<kol_m; i++){
cin >> mas[i];}
//количество элементов, равных 0
int count=0;
for(i=0;i<kol_m;i++){
if(mas[i]==0)
count++;
}
cout<<"Количество элементов равных 0: "<<count<<endl;
//Сумму элементов массива, расположенных после минимального элемента
int min = mas[0];
int ind=0;
for(int i = 1; i<kol_m; i++)
{
if(min > mas[i]){ min = mas[i];
ind=i;}
}
int sum=0;
for(int i=ind+1;i<kol_m;i++) {
sum=sum+mas[i];
}
cout<<"Минимальный элемент: "<<min<<endl;//Вывод на экран значения минимального элемента в массиве
cout<<"Сумма элементов после min: "<<sum<<endl;//Вывод суммы
//сортировка по возрастанию
qsort (mas, kol_m, sizeof(double), comp1); //функция qsort (<сортируемый массив>, <количество элементов>, sizeof(<тип элемента>), <функция для сравнения>);
//ввывод результатов на экран
for(i=0; i<kol_m; i++)
cout<<mas[i]<<" ";cout<<"\n";
system("pause");
return 0;
}
Пример выполнения программы