-- Exercise 3.14
myMin :: Int -> Int -> Int
myMin x y
| x < y = x
| otherwise = y
myMinThree :: Int -> Int -> Int -> Int
myMinThree x y z
| myMinTwo < z = myMinTwo
| otherwise = z
where myMinTwo = myMin x y
-- Exercise 3.13
-- Exercise 3.12
-- Exercise 3.11
-- Exercise 3.10
fourEqual :: Integer -> Integer -> Integer ->Integer -> Bool
fourEqual m n x y = (threeEqual m n x) && (m ==y)
threeEqual :: Integer -> Integer -> Integer -> Bool
threeEqual m n p = m ==n && n ==p
-- Exercise 3.9
threeDifferent :: Integer -> Integer -> Integer -> Bool
threeDifferent m n p = m /=n && m/=p && n/= p
-- Exercise 3.8
mystery:: Integer -> Integer -> Integer -> Bool
mystery m n p = not ( (m == n) && (n==p))
-- Exercise 3.7
-- Exercise 3.6
-- Exercise 3.5
nAnd :: Bool -> Bool -> Bool
nAnd True True = True
nAnd _ _ = False
-- Exercise 3.4
andand :: Bool -> Bool -> Bool
andand True True = True
andand _ _ = False
oror ::Bool -> Bool -> Bool
oror True _ = True
oror _ True = True
oror _ _ = False
-- Exercise 3.3
-- Exercise 3.2
-- Exercise 3.1
exOr :: Bool -> Bool -> Bool
exOr x y
| x /= y = True
| otherwise = False
Haskell函数式编程基础习题
最新推荐文章于 2024-04-07 09:41:05 发布