From e5ce6898294e7610fd6a0404ef513fddee60663d Mon Sep 17 00:00:00 2001 From: Syndamia Date: Sun, 25 Dec 2022 11:17:28 +0200 Subject: [FP/HW3] Added comments to first exercise --- Year 2/Functional Programming/hw3.hs | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'Year 2/Functional Programming') diff --git a/Year 2/Functional Programming/hw3.hs b/Year 2/Functional Programming/hw3.hs index 041c24d..2b1b864 100644 --- a/Year 2/Functional Programming/hw3.hs +++ b/Year 2/Functional Programming/hw3.hs @@ -6,13 +6,18 @@ generate as bs = asiter as bs (head as) asiter [] _ _ = [] asiter as bs minm | head as < minm = asiter (tail as) bs minm + -- Минаваме през всеки елемент от as и строим всички редици, които започват с него | otherwise = bsiter as bs (head as) ++ asiter (tail as) bs (head as) bsiter _ [] _ = [] bsiter as bs minm | head bs < minm = bsiter as (tail bs) minm + -- Минаваме през всеки елемент от bs и строим редици + -- Първият елемент, започващ с as и сегашния bs | otherwise = [[head as, head bs]] + -- Всички редици, които започват с [as, bs], тоест строим всички възможни редици без сегашните глави на as и bs ++ (map (\x -> [head as, head bs] ++ x) (asiter (tail as) (tail bs) (head bs))) + -- Следващ елемент от bs ++ bsiter as (tail bs) (head bs) -- Задача 2 -- cgit v1.3.1-23-gd82d