我收到以下错误:
/calcTax.rb:9: syntax error, unexpected $undefined
grandtotal = $#{subtotal - tax}
从这段代码:
print('What amount would you like to calculate tax for? $')
subtotal = gets.to_i
taxrate = 0.078
tax = subtotal * taxrate
if (tax > 0.0)
grandtotal = $#{subtotal + tax}
else if (tax < 0.0)
grandtotal = $#{subtotal - tax}
puts "Tax on $#{subtotal} is $#{tax}, so the grandtotal is $#{grandtotal}."
我想知道我是否需要以不同的方式将subtotal
设置为某个值,或者我可以采取哪些措施来修复我的程序?
我在第10行也遇到unexpected $end
错误。
答案 0 :(得分:1)
这里的语法有些问题。
首先,在将变量插入带引号的字符串时,只需要$#{blah}
语法(并且只有效!)。当您只是执行计算时,您可以简单地说出:
grandtotal = subtotal + tax
您还需要在then
行的末尾添加if
,将else if
更改为elsif
,然后添加end
第二个grandtotal
行。完成这项工作后,您应该:
print('What amount would you like to calculate tax for? $')
subtotal = gets.to_i
taxrate = 0.078
tax = subtotal * taxrate
if tax > 0.0 then
grandtotal = subtotal + tax
elsif tax < 0.0 then
grandtotal = subtotal - tax
end
puts "Tax on $#{subtotal} is $#{tax}, so the grandtotal is $#{grandtotal}."
这似乎有用。