我試圖從命令行執行該程序,但我無法使用gets.chomp
,而是返回鍵值。如何從終端運行文件時使用獲取?
我進入:ruby name_of_file.rb name_of_file.txt
def caesar_cipher(key)
s = gets.chomp
encoded = ""
s.each_byte do |l|
if ((l >= 65 && l <= 90) || (l >= 97 && l <= 122))
encoded += (l+key).chr
else
encoded += l.chr
end
end
encoded
end
File.readlines(ARGV[0]).map(&:to_i).each {|key| puts caesar_cipher(key)}
我知道程序並沒有完全執行凱撒密碼,我只是想弄清楚如何在命令行中運行,而無需使用撬或IRB 。
從命令行運行程序時會發生什麼? –
它打印關鍵值。所以如果txt文件有一行包含數字3,它會打印3. – evkline