Octopress的教學

記錄如何安裝octopress

Ruby問題

學了好幾天ruby,開始對這個語言有一點興趣,但是碰到問題不知道該怎麼辦?

1
2
3
4
5
print "name1, name2, name3"
name1 = gets.chomp
name2 = gets.chomp
name3 = gets.chomp
puts name1 + name2 + name3

我是希望輸入的數字,可以相加,可是為何出來的是數字排排站……..

後來經過Ga Dii老師 的指導,解答如下:

因為這三個變數是字串(string)。要變成相加的話必須要先轉成數字,可以在 gets.chomp 後面再加上 .to_i,這樣就能變成數字相加了,也就是說如果不特別指定,變數預設是字串,要變成數字要.to_i,但是相對如果要把數字變成字串,要.to_s。陣列的話是.to_a

1
2
3
4
5
print "name1, name2, name3"
name1 = gets.chomp.to_i
name2 = gets.chomp.to_i
name3 = gets.chomp.to_i
puts name1 + name2 + name3

接下來,我又更貪心了,可不可以螢幕輸出name1,等我輸入以後,再出現下一個字串….等待老師下一個教導

老師說,不能用這樣的方法,只能用def function的方式,我得快點學習了!

備註:後來還是用另一個方式解決了!

1
2
3
4
5
6
7
8
9
10
11
12
print "請輸入藥品名稱 "
name = gets.chomp.to_s
print "請輸入健保碼 "
number = gets.chomp.to_s
print "請輸入使用次數 "
times = gets.chomp.to_i
print "請輸入藥品單價 "
unim = gets.chomp.to_i

total = times * unim

puts "#{name}, 健保碼是#{number} , 每日#{times}次,一共#{total} 元"

Comments