2012-07-11 36 views
0
(define (number-checker) 
    (define userinput (read)) 
    (cond 
     [(eof-object? userinput) print-fun)] 
     [else 
      (set! tries (+ 1 userinput)) 
      (number-checker)])) 

如果我想退出該程序爲了讓程序能夠打印有趣,我需要寫些什麼?固定錯字後x需要通過eof-object退出什麼值?計劃

也:

+0

我不記得語法中的「[」... – alfasin 2012-07-11 05:07:47

+0

uhm它的方案? [對於if/cond語句 – user1516649 2012-07-11 05:09:01

+0

是你[*確定*](http://www.cs.cmu.edu/Groups/AI/html/r4rs/r4rs_6.html)? – alfasin 2012-07-11 05:10:08

回答

1

這不是一種編譯我(使用球拍)

enter image description here

如果我理解正確的話它應該閱讀提示用戶輸入和bail-當「文件結束」字符到達時出現。但是,這段代碼肯定無法工作。 print-fun是什麼?等

UPDATE:
工作代碼爲:

#lang racket 
(define (number-checker) 
    (define userinput (read)) 
    (define tries 'a) 
    (cond 
     [(eof-object? userinput) 'print-fun] 
     [else 
      (set! tries (+ 1 userinput)) 
      (number-checker)])) 

它的工作原理是這樣的:

enter image description here

更新2: 另一張截圖,顯示在運行後出現的eof按鈕:

enter image description here

+0

我只是這是我的錯字O.o你知道我必須把用戶輸入順序作爲eof-obejct是真的嗎?我無法測試我的代碼因爲 – user1516649 2012-07-11 05:16:25

+1

uhm idk如何發佈圖片...但它編譯我的信任我。你能回答我的問題嗎? T.順便說一句,忘記#朗拍 – user1516649 2012-07-11 05:21:15

+0

我更新了我的答案,但仍然,即使我調用'#lang racket',我得到'expand:unbound標識符在模塊中:print-fun',如果我將'print-fun'更改爲''打印 - 樂趣'(這可能是含義)我會'設置!:unbound標識符在模塊中:試試'等。 – alfasin 2012-07-11 05:25:49

4

你的問題真的不是很清楚,但如果你只是想問問如何得到一個值,eof-object?會很樂意用,那麼你可以使用eof

+0

idk如何使它更清楚... userinput應該爲什麼(eof-object?userinput)爲真? – user1516649 2012-07-11 05:36:11

+2

@ user1516649:如果您想編寫代碼,'eof'是您要使用的名稱;但是當你閱讀DrRacket中的東西時,就像@alfasin所示,你可以使用「eof」按鈕;並在linux/osx控制檯上輸入'Ctrl + D'。 – 2012-07-11 11:01:38