
УП10
.docxГУАП
КАФЕДРА № 41
ОТЧЕТ ЗАЩИЩЕН С ОЦЕНКОЙ
ПРЕПОДАВАТЕЛЬ
Старший преподаватель |
|
|
|
Е.П. Виноградова |
должность, уч. степень, звание |
|
подпись, дата |
|
инициалы, фамилия |
ОТЧЕТ О ПРАКТИЧЕСКОЙ РАБОТЕ №10 |
ЗАДАЧА ОБ ОБМЕНЕ МЕСТАМИ ЭЛЕМЕНТОВ МАССИВА |
по курсу: УЧЕБНАЯ ПРАКТИКА |
|
РАБОТУ ВЫПОЛНИЛ
СТУДЕНТ ГР. № |
4116 |
|
|
|
|
|
|
|
подпись, дата |
|
инициалы, фамилия |
Санкт-Петербург 2022
Задача: реализовать функцию, меняющую местами наибольший элемент массива и второй по величине ( второй после минимального)
Решение:
решение задачи на языке программирования С++:
#include <iostream>;
using namespace std;
void change(int a[17]) {
int max = 0;
int min2 = 0;
int min1 = 0;
for (int i = 1; i < 17; i++)
{
if (a[i] > a[max])
max = i;
}
for (int i = 0; i < 17; i++)
{
if (a[i] < a[min1])
{
min2 = min1;
min1 = i;
}
}
int t;
t = a[max];
a[max] = a[min2];
a[min2] = t;
for (int i = 0; i < 17; i++)
{
cout << a[i] << " ";
}
}
int main()
{
srand(time(NULL));
int a[17];
for (int i = 0; i < 17; i++)
{
a[i] = rand() % 100;
cout << a[i]<<endl;
}
change(a);
}
за наибольший элемент я обозначила переменную max, за второй по величине min2, за минимальный min1. В главной функции создаётся массив из случайных чисел от 0 до 100, в функции change вычисляется наибольший и второй по величине элемент, они меняются местами, и затем выводятся на экран.
Снимок результата работы программы:
В данном случае 7-второе после минимального число, 86- максимальное, во втором массиве они меняются местами.
Вывод: языки программирования, такие как С++, позволяют решать прикладные задачи.