Ruby错误代码
尝试在bash中运行时出现以下错误:Ruby错误代码,ruby,Ruby,尝试在bash中运行时出现以下错误: 39: syntax error, unexpected end-of-input, expecting keyword_end 我已经试着摆弄它好几个小时了,但我对学习Ruby还是相当陌生,完全搞不懂。以下是我的工作内容: def encode(password) i = 0 length = password.length while i < length do if let
39: syntax error, unexpected end-of-input, expecting keyword_end
我已经试着摆弄它好几个小时了,但我对学习Ruby还是相当陌生,完全搞不懂。以下是我的工作内容:
def encode(password)
i = 0
length = password.length
while i < length do
if letter[i] == "z"
letter[i]== "a"
else
letter[i] = letter[i].next
end
i += 1
return password
end
def decode(encoded_password)
alphabet = "abcdefghijklmnopqrstuvwxyz"
i = 0
length = encoded_password.length
while i < length do
if letter == "a"
letter == "z"
else
encoded_password[i] = alphabet[alphabet.index(letter) - 1]
end
i += 1
end
return encoded_password
end
puts "What is the password?"
password = gets.chomp
puts "Would you like to decode or encode?"
selection = gets.chomp
if selection == "encode"
puts encode(password)
elsif selection == "decode"
puts decode(password)
end
def编码(密码)
i=0
长度=密码。长度
而我呢
如果字母[i]=“z”
字母[i]=“a”
其他的
字母[i]=字母[i]。下一个
结束
i+=1
返回密码
结束
def解码(编码密码)
alphabet=“abcdefghijklmnopqrstuvxyz”
i=0
长度=编码的密码长度
而我呢
如果字母==“a”
字母==“z”
其他的
编码密码[i]=字母表[字母表索引(字母)-1]
结束
i+=1
结束
返回编码的密码
结束
输入“密码是什么?”
password=gets.chomp
放入“您想解码还是编码?”
selection=gets.chomp
如果选择==“编码”
输入编码(密码)
elsif选择==“解码”
输入解码(密码)
结束
提前谢谢 您在
encode
方法中缺少一个end
来关闭而块
def encode(password)
i = 0
length = password.length
while i < length do
if letter[i] == "z"
letter[i]== "a"
else
letter[i] = letter[i].next
end
i += 1
end # You missed this
return password
end
def编码(密码)
i=0
长度=密码。长度
而我呢
如果字母[i]=“z”
字母[i]=“a”
其他的
字母[i]=字母[i]。下一个
结束
i+=1
结束,你错过了这个
返回密码
结束
这将解决语法错误、输入意外结束、需要关键字\u end
错误,但代码还有其他问题。在encode
和decode
方法中,letter
指的是什么?在encode
中添加end
,但是你想做什么呢?当你遇到这样的错误时,用ruby-w
运行你的程序很有用-它会告诉你丢失的“end”在哪里。