Главная

Популярная публикация

Научная публикация

Случайная публикация

Обратная связь

ТОР 5 статей:

Методические подходы к анализу финансового состояния предприятия

Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века

Ценовые и неценовые факторы

Характеристика шлифовальных кругов и ее маркировка

Служебные части речи. Предлог. Союз. Частицы

КАТЕГОРИИ:






Ход выполнения работы.

Лабораторная работа 1

Тема: Подпрограммы и функции

Цель: приобрести практические навыки разработки подпрограмм и функций.

Ход выполнения работы.

Условия задачи.

1) Разработать подпрограмму для заполнения с-подобного массива случайными числами;

2) Разработать подпрограмму для заполнения с-подобного массива нулями;

3) Разработать алгоритм подсчёта кол-ва вхождения числа X в массив;

4) Разработать алгоритм расчёта суммы элементов массива;

5) Разработать алгоритм вывода элементов массива на экран;

6) Разработать алгоритм сортировки массива по убыванию;

7) Разработать алгоритм сортировки массива по возрастанию.

Листинг

#include <iostream>

#include <random>

#include <ctime>

 

void arrayRand(int* a, int len, std::mt19937& r){

std::uniform_int_distribution<> uid(-1000,1000);

for (int i = 0; i < len; i++){

a[i] = uid(r);

}

}

 

void arrayNull(int* a, int len){

for (int i = 0; i < len; i++){

a[i] = 0;

}

}

 

 

int arrayCount(int* a, int len, int x){

int res = 0;

for (int i = 0; i < len; i++){

if (a[i]==x){

res++;

}

}

return res;

}

 

int arraySum(int* a, int len)

{

int sum = 0;

for (int i = 0; i < len; i++){

sum += a[i];

}

return sum;

}

 

void arrayPrint(int* a, int len){

for (int i = 0; i < len; i++){

std::cout << a[i] << " ";

}

}

 

int maxIndex(int* a, int len){

int index = 0;

int max = a[0];

for (int i = 0; i < len; i++){

if (max < a[i]){

max = a[i];

index = i;

}

}

return index;

}

 

void arraySortMax(int* a, int len){

for (int i = 0; i < len; i++)

{

int index = maxIndex(a + i, len - i) + i;

int temp = a[i];

a[i] = a[index];

a[index] = temp;

}

}

 

int minIndex(int* a, int len){

int index = 0;

int min = a[0];

for (int i = 0; i < len; i++){

if (min > a[i]){

min = a[i];

index = i;

}

}

return index;

}

 

void arraySortMin(int* a, int len){

for (int i = 0; i < len; i++)

{

int index = minIndex(a + i, len - i) + i;

int temp = a[i];

a[i] = a[index];

a[index] = temp;

}

}

 

int main(){

const int len = 10;

int a[len];

std::mt19937 r(time(0));

arrayNull(a, len);

std::cout << "arrayNull: " << std::endl;

arrayPrint(a, len);

std::cout << std::endl << std::endl;

arrayRand(a, len, r);

std::cout << "arrayRand: " << std::endl;

arrayPrint(a, len);

std::cout << std::endl << std::endl;

std::cout << "arrayCount: " << std::endl << arrayCount(a, len, 2);

std::cout << std::endl << std::endl;

std::cout << "arraySum: " << std::endl << arraySum(a, len);

std::cout << std::endl << std::endl;

arraySortMax(a, len);

std::cout << "arraySortMax: " << std::endl;

arrayPrint(a, len);

std::cout << std::endl << std::endl;

arraySortMin(a, len);

std::cout << "arraySortMin: " << std::endl;

arrayPrint(a, len);

 

return 0;

}

 

Скриншот

 

Рис. 1 Результат работы программы

Заключение.

Приобрёл практические навыки разработки подпрограмм и функций.

 

<== предыдущая лекция | следующая лекция ==>
Теоретические основы укрепления здоровья и профилактики нарушений состояний здоровья. | Основные структурные


Не нашли, что искали? Воспользуйтесь поиском:

vikidalka.ru - 2015-2024 год. Все права принадлежат их авторам! Нарушение авторских прав | Нарушение персональных данных