Дана матрица, найти ее наибольший элемент и номера строки и столбца, на пересечении которых он находится - Lisp
Формулировка задачи:
Здравствуйте помогите с заданием)
Задание:
Дана матрица A(N,M). найти ее наибольший элемент ( первый по порядку, если их несколько) и номера строки и столбца, на пересечении которых он находится.Решение задачи: «Дана матрица, найти ее наибольший элемент и номера строки и столбца, на пересечении которых он находится»
textual
Листинг программы
(defun range (n k) (cond ((= n k) (list n)) ((> n k) (range k n)) (t (cons n (range (+ n 1) k)))))
Объяснение кода листинга программы
В данном коде определен анонимный вспомогательный функция с именем RANGE. Она принимает два аргумента: N и K. Если N равно K, то функция возвращает список, содержащий N. Если N больше K, то функция вызывает саму себя с аргументами K и N, чтобы продолжить рекурсивный обход диапазона. Если N меньше или равно K, то функция вызывает саму себя с аргументами N+1 и K, чтобы продолжить рекурсивный обход диапазона, и добавляет N к результату. Таким образом, функция RANGE возвращает список, содержащий все числа в заданном диапазоне, отсортированные по возрастанию.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д