diff options
| Commit | e5ce6898294e7610fd6a0404ef513fddee60663d (patch) | |
|---|---|---|
| Author | 2022-12-25 11:17:28 +0200 | |
| Committer | 2022-12-25 11:17:28 +0200 | |
| Files | f13d6bfa7bb8d5e9a89eb9c28932b5ff1cb63b57 | |
| uni-projects-e5ce6898294e7610fd6a0404ef513fddee60663d.tar uni-projects-e5ce6898294e7610fd6a0404ef513fddee60663d.tar.gz uni-projects-e5ce6898294e7610fd6a0404ef513fddee60663d.zip | ||
| Parent | 30c5b70d4b9b40f07bf23b1dbf5e2cd50137bbdb (diff) | |
[FP/HW3] Added comments to first exercise
1 files changed, 5 insertions, 0 deletions
| -rw-r--r-- | Year 2/Functional Programming/hw3.hs | 5 |
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 |
