2017-01-27 8 views
2

私は初心者であり、io.readなどを正しく使用する方法がわかりません。 私は非常に簡単なことに取り組んでおり、ステートメントをユーザーからの入力を得て、年齢を言うようにすることができるものに置き換えたいと思っていました。io.readを使用して数字を読む方法

の代わりに、この:事前に

print("What's your age?") 
io.read(ONLY ACCEPTS NUMBERS AND IS USED TO COMPARE WITH AGE REQUIREMENTS BELOW) 

if age >= 18 and age <=80 then 
    print("You may enter!") 
else 
    print("You are not allowed in, sorry!") 
end 

ありがとう:

age = 18 

if age >= 18 and age <=80 then 
    print("You may enter!") 
else 
    print("You are not allowed in, sorry!") 
end 

私はこれをしたいです。

答えて

1

tonumber()を使用して変数を数値に変換し、その変数のブール値をチェックできます。

print("What's your age?") 
local age = tonumber(io.read()) 

if age and age >= 18 and age <= 80 then 
    print("You may enter!") 
else 
    print("You are not allowed in, sorry!") 
end 
0

ルアインタプリタはあなたのためにstdin, stdout, and stderrを開きます。 io.readを使用して数値を読み取ることができます。manualには、nという形式を使用して、整数または浮動小数点数を読み取ることを示すことができます。

local age = io.stdin:read 'n' 
if age then 
    -- age is a number 
else 
    -- age is nil 
end 
関連する問題