检查用户输入的数字是否为正数或负数,并在其为负数时给出错误

我正在尝试创建一个程序,它会取用户输入的宽度和高度,并输出矩形的面积和周长。我还希望程序检查用户为宽度或高度输入的值是正数还是负数。如果用户为任一宽度或高度输入负值,则我希望它显示一个错误。这是我目前所拥有的,但它似乎只是跳过并继续计算。

local width, height, area, perimeter

-- 介绍文本和用户输入
print("欢迎使用矩形面积和周长计算器")

print("输入矩形宽度")
width = io.read("n")
if width <0
then print "错误:请输入宽度的正值"
end

print("输入矩形高度")
height = io.read("n")
if height <0
then print "错误:请输入高度的正值"
end

-- 计算器
area = width * height
print("矩形的面积是", area)
perimeter = 2 * (width + height)
print("矩形的周长是", perimeter)
点赞
用户3872374
用户3872374
local width, height, area, perimeter

-- 介绍文本和用户输入
print("欢迎使用矩形面积和周长计算器")

repeat
print("请输入矩形宽度")
width = io.read("n")
  if(width < 0) then 
    print("错误:请输入正数")
  end
until width > 0

repeat
print("请输入矩形高度")
height = io.read("n")
  if height <0 then 
    print("错误:请输入正数")
  end
until height > 0

-- 计算器
area = width * height
print("矩形的面积为 ", area)
perimeter = 2 * (width + height)
print("矩形的周长为 ", perimeter)
2017-09-04 04:58:02