Дана матрица размера 5 x 10 заполненная целыми числами. Преобразовать эту матрицу, поменяв местами минимальный и максимальный элемент в каждой строке. Дайте оценку сложности построенного алгоритма.(pascal abc)
Ответы
Ответ дал:
0
1) Начало
2) Ввод матрицы A(5, 10)
3) Цикл по i от 1 до 5 // по строкам
3.1) max = A(i, 1); min = A(i, 1); nmax = 1; nmin = 1;
3.2) Цикл по k от 1 до 10 // по столбцам
3.2.1) Если A(i, k) > max, то // находим максимум в строке и его номер
3.2.1.1) max = A(i, k); nmax = k;
3.2.1.2) Конец Если
3.2.2) Если A(i, k) < min, то // находим минимум в строке и его номер
3.2.2.1) min = A(i, k); nmin = k;
3.2.2.2) Конец Если
3.2.3) Конец цикла по k // по столбцам
3.2.4) A(i, nmin) = max; A(i, nmax) = min // меняем их местами
3.3) Конец цикла по i // по строкам
4) Вывод массива A(5, 10)
5) Конец.
Сложность такой программы - 1 (очень простая).
Всего лишь два цикла в цикле и два сравнения чисел.
2) Ввод матрицы A(5, 10)
3) Цикл по i от 1 до 5 // по строкам
3.1) max = A(i, 1); min = A(i, 1); nmax = 1; nmin = 1;
3.2) Цикл по k от 1 до 10 // по столбцам
3.2.1) Если A(i, k) > max, то // находим максимум в строке и его номер
3.2.1.1) max = A(i, k); nmax = k;
3.2.1.2) Конец Если
3.2.2) Если A(i, k) < min, то // находим минимум в строке и его номер
3.2.2.1) min = A(i, k); nmin = k;
3.2.2.2) Конец Если
3.2.3) Конец цикла по k // по столбцам
3.2.4) A(i, nmin) = max; A(i, nmax) = min // меняем их местами
3.3) Конец цикла по i // по строкам
4) Вывод массива A(5, 10)
5) Конец.
Сложность такой программы - 1 (очень простая).
Всего лишь два цикла в цикле и два сравнения чисел.
Вас заинтересует
2 года назад
2 года назад
8 лет назад
8 лет назад
8 лет назад