Создать новый список - Haskell
Формулировка задачи:
Помогите пожалуйста с кодом программы.
Задан список чисел. Создать новый список, в котором каждое значение поделено на максимальное значение исходного списка
P.S. Заранее спасибо
Решение задачи: «Создать новый список»
textual
Листинг программы
import qualified Data.List.NonEmpty as NE -- Этот модуль в базовом пакете import Data.List.NonEmpty (NonEmpty(..),(<|)) task l = NE.map (/maximum l) l main :: IO () main = print $ task $ 1 <| 4 <| 5 <| 3 :| []
Объяснение кода листинга программы
- Импортируется модуль
Data.List.NonEmpty
с помощью ключевого словаimport
. - В этом модуле определены типы
NonEmpty(..)
,map
и оператор<|>
, который является частью типаNonEmpty a
. - Далее определена функция
task
, которая принимает списокl
и возвращает список, где каждый элементx
изменён наx / maximum l
. - В функции
main
создаётся список[1, 4, 5, 3]
, который передаётся в функциюtask
. - Результат работы функции
task
выводится на экран с помощью функцииprint
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д