2016-07-15 54 views
-1

我正試圖在ruby中實現Sudoku遊戲。在那我有一個問題。問題是我無法一次處理多行。例如,我有一個5 * 5的盒子。在每個框中,用戶需要輸入該號碼。例如,用戶需要將該號碼放在第二個框中,我不知道如何去第二個框。因爲第二個盒子在第一行中可用。但我寫了超過10行。如何用stdout尋找?

我在網上搜索。他們說,其中一種方法是使用seek 方法。但搜尋方法不適用於標準輸出。

我沒有實現Sudoku代碼。我試圖用簡單的例子來尋求標準輸出。

下面是示例代碼,

file = $stdout.dup 

file.puts "######### ##########" 
file.puts "####################" 
file.puts "####################" 
file.puts "####################" 
file.puts "####################" 

file.pos=10 
file.puts "#" 

在這個例子中,第10位包含了空間,我需要改變空間到#\ n。爲此,我嘗試了上面的代碼。但它不會工作。

任何人都可以請解釋我爲什麼它不工作,以及如何做到這一點只有紅寶石不使用鐵軌?

回答

0

並非每個文件句柄都是可搜索的。如果stdout是一個磁盤文件,那麼你可能會尋找它,但如果stdout是一個終端,那麼你將無法做到。

+0

標準輸出是一個終端,有沒有辦法在終端做到這一點? – suresh

+0

不,你不能「尋找」一個終端。這意味着你將不得不時間旅行,根本無法跳過尚未打印的東西。 –