Добавил:
shaaydar
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:laba1
.hs myexpr :: Floating a => a -> a -> a
myexpr a b =
(sqrt (a - 2 * b)) / (a**2 + log b)
--elem (head (drop 1 “abd”)) (tail (tail “abcdef”))
--По заданным двум спискам возвращает список,
--содержащий в обратном порядке элементы списка,
--имеющего меньшую длину.
mylist :: [a] -> [a] -> [a]
mylist a b
| length a < length b = reverse a
| otherwise = reverse b --иначе
fib :: Integer -> Integer
fib 1 = 1
fib 2 = 2
fib n = fib (n-1) + fib (n-2)
fac :: Integer -> Integer
fac 0 = 1
fac 1 = 1
fac n = n * fac(n-1)
-- F(n,m)=fib(n+m+1)-min{n!,m!}
f :: Integer -> Integer -> Integer
f n m =
fib (n + m + 1) - min (fac n) (fac m)
myexpr a b =
(sqrt (a - 2 * b)) / (a**2 + log b)
--elem (head (drop 1 “abd”)) (tail (tail “abcdef”))
--По заданным двум спискам возвращает список,
--содержащий в обратном порядке элементы списка,
--имеющего меньшую длину.
mylist :: [a] -> [a] -> [a]
mylist a b
| length a < length b = reverse a
| otherwise = reverse b --иначе
fib :: Integer -> Integer
fib 1 = 1
fib 2 = 2
fib n = fib (n-1) + fib (n-2)
fac :: Integer -> Integer
fac 0 = 1
fac 1 = 1
fac n = n * fac(n-1)
-- F(n,m)=fib(n+m+1)-min{n!,m!}
f :: Integer -> Integer -> Integer
f n m =
fib (n + m + 1) - min (fac n) (fac m)