我想確保輸入的羅馬數字是有效的。我的策略是從第一個或第二個字符開始,如果字符串之後的任何內容都無效,那麼我告訴他們重新輸入他們的號碼。如果我這樣做,我需要爲D,CD,C,XC,L,XL,X,IX,V,IV和I.創造一個條件。我寫下這種條件語句的最佳方式是粘貼的方式,還是有更漂亮的方法?if語句的條件太多?
string = "CMCMD"
integer_num = 0
if string[0..1] = "CM"
if string[2..-1].include? "M" || string[2..-1].include? "CD" || string[2..-1].include? "D" || string[2..-1].include "CM" || string[2..-1].include? "C"
puts "This is invalid. Please enter your roman numeral correctly."
else
add 900 to integer_num and slice CM off the beginning of the string.
end
end
我看了看文檔,並在S.O幾件事情像this one。
謝謝!那個好漂亮。將在10分鐘內接受答案。 – user3138341