[閒聊] Haskell
※ 引述《Schelfaniel (Test)》之銘言:
: 我是覺得 Java 純就語言來說不算難...
: 但是它元件一堆...算是自由軟體業的其中一個大本營...
: 光是 Apache 那邊的東西就夠多了...
: 當然 Sun 自己也提了一堆架構...( 這邊也一堆專有名詞 @@ )
: 我是覺得多學一些語言, 不能算是什麼高手啦...
: 像我比較在碰的, 其實和 godfat 類似, 就是 D, Ruby, Common Lisp...
: 其他比較少碰...之前還碰一下 Haskell 但是實在不太擅長...@_@
: Haskell 寫個猜數字遊戲 (1-100) 電腦會回報太大還是太小, 都陷入苦境 :QQ
: ( 當然後來還是寫出來了, 不過不太漂亮就是了 @_@ )
: 會碰這些也是有點碰了一堆商業元件, 想要有點真正回到寫程式的感覺吧 @_@
先貼初版的給你好了 (二版的等我回去再找找)
這版的缺點是, 只要輸入不是數字的馬上就 Exception @_@
( Lisp 可以用 integerp 來查看它是不是數字, 不過 Haskell 我不知道 :QQ)
而且它不會計算你輸入過幾次以及目前的可能範圍....
(如你猜 50, 結果是太大的話, 可能範圍就變成 1-50)
(不過這個只是在函式參數再多加幾個就可以達成)
最後是 Haskell 的排版, 以下每行前面的空格是該語言要求要空格...
我是覺得這樣很容易造成一直往後移...
module Main
where
import IO
import Random
main = do
hSetBuffering stdin LineBuffering
num <- randomRIO (1::Int, 100)
putStrLn "I’m thinking of a number between 1 and 100"
doGuessing num
doGuessing num = do
putStrLn "Enter your guess:"
guess <- getLine
let guessNum = read guess
if guessNum < num
then do putStrLn "Too low!"
doGuessing num
else if read guess > num
then do putStrLn "Too high!"
doGuessing num
else do putStrLn "You Win!"
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.220.34.34
推
08/15 09:46, , 1F
08/15 09:46, 1F
推
08/15 13:06, , 2F
08/15 13:06, 2F
推
08/15 14:09, , 3F
08/15 14:09, 3F
→
08/15 14:12, , 4F
08/15 14:12, 4F
→
08/15 14:27, , 5F
08/15 14:27, 5F
→
08/15 14:41, , 6F
08/15 14:41, 6F
→
08/15 14:51, , 7F
08/15 14:51, 7F
→
08/15 14:52, , 8F
08/15 14:52, 8F
→
08/15 15:06, , 9F
08/15 15:06, 9F
→
08/17 03:19, , 10F
08/17 03:19, 10F
→
08/17 13:04, , 11F
08/17 13:04, 11F
Ruby 近期熱門文章
PTT數位生活區 即時熱門文章