
IT ФЭЛ, кафедра МНЭ, 2 сем, Matlab / ЛР3 / Lab3
.docxМИНОБРНАУКИ РОССИИ
Санкт-Петербургский государственный
электротехнический университет
«ЛЭТИ» им. В.И. Ульянова (Ленина)
Кафедра микро- и наноэлектроники
отчет
по лабораторной работе
по дисциплине «Информационные технологии»
Тема: «Алгоритмы и программы решения задач комбинаторики»
Студент гр. 1282 |
|
БОГДАН |
Преподаватель |
|
Фирсов Д. Д. |
Санкт-Петербург
2022
Задание 1. Алгоритм «Сортировка выбором»
Цель: изучение и программирование стандартного алгоритма сортировки
Задача:
Ход работы:
n = input ('Введите количество элементов вектора ');
disp (n);
for k=1:n
A(k)= input ('Введите элемент вектора ');
end
disp (A);
min=1;
i=1;
M=0;
while i<=n
min=i;
j=i+1;
while j<=n
if A(j)<=A(min)
min=j;
end
j=j+1;
end
if min ~= i
tmp=A(i); A(i)=A(min); A(min)=tmp;M=M+1;
end
i=i+1;
end
disp(A);
disp('Кол-во перестановок=');
disp(M)
Листинг программы:
введите количество элементов вектора 4
4
введите элемент вектора 34
введите элемент вектора 1
введите элемент вектора 67
введите элемент вектора 5
34 1 67 5
1 5 34 67
кол-во перестановок=
3
Задание 2:
Алгоритм «Глупая сортировка»
Цель работы:
Изучение и программирование стандартного алгоритма сортировки
Задача:
Ход работы:
n = input ('Введите количество элементов вектора ');
disp (n);
for k=1:n
A(k)= input ('Введите элемент вектора ');
end
disp (A);
min=0;
M=0;
i=1;
while i<n+1
if i<=1 || A(i-1)<=A(i)
i=i+1;
else
tmp=A(i);
A(i)=A(i-1);
A(i-1)=tmp;
i=i-1;
M=M+1;
end
end
disp(A);
disp('Кол-во перестановок=');
disp(M);
Листинг программы:
>> lab3
введите количество элементов вектора 4
4
введите элемент 34
введите элемент 1
введите элемент 67
введите элемент 5
34 1 67 5
1 5 34 67
кол-во перестановок=
3
Вывод: В ходе выполнения лабораторной работы были реализованы алгоритмы сортировки выбором и «глупой» сортировки. Данные, полученные в Matlab совпадают при решение одной задачи путем рассмотренных алгоритмов сортировки.