Haskell函數式編程基礎習題

-- 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




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章