按索引查找txt特定字符

时间:2013-05-18 13:13:55

标签: ruby

我的Ruby作业存在问题。

有一个包含1000个字符的txt文件(每行一个)
所以程序要求用户提供9个数字0..999
之后,它应该从文件中找到并打印9个字符

示例输出
在0-999:444之间给出1.数字 给2.编号在0-999:756之间 给3.编号在0-999:223之间 在4.-999:999之间给出4.数字 在5.-999:0之间给出5.数字 给出数字在0-999:123之间 在0-999:23之间给出7.数字 在0-999:44之间给出8号 给出数字在0-999:533之间 你的话是ryqbaAsQn

这是我的代码

#coding:utf-8
path = "7-3_tiedosto.txt"
lst = Array.new 
word = Array.new
text = ""

puts "Luodaan salasana."

for i in 1..9
   print "Anna #{i}. luku väliltä 0-999: "
   lst.push(gets.to_i)
end

my = File.open(path, "r")
my.each{|line| word.push(line.chomp)}
my.close

for i in 0..8
   a = lst[i]   
   text = text << word[a]
end

puts "Ohjelma loi salasanan #{text}"

1 个答案:

答案 0 :(得分:0)

这看起来是一个熟悉ruby调试的好机会。当您的程序状态与预期不同时,会出现类似这样的问题。由您决定为什么状态与您预期的不同,然后采取纠正措施。

我建议尝试使用put语句在程序执行时打印出程序状态,或者2)使用ruby调试器在程序运行时逐步执行程序以验证状态。

以下是有关调试的入门知识:http://ruby.about.com/od/advancedruby/a/debugging.htm

希望有所帮助!这些问题一直存在,因此学习如何处理这些问题非常重要。祝你好运。