一、循环1至100
--写法1(while..do..end)
print('写法1')
local x =1
while x <=100 do
print(x)
x += 1
end
--写法2(for..do..end)
print('写法2')
for x=1,100,1 do
print(x)
end
--写法3(repeat..until)
print('写法3')
local x=0
repeat
x+=1
print(x)
until x==100
--写法4(定义一个类似python的range简易函数)
local range
range = function(n)
local start = 0
local target = n
local step = 1
local now = start
local function range_element()
--控制输入now值过大
if now >= target then
return nil
end
now += step
return now
end
return range_element --闭包函数返回给for使用
end
--调用定义的函数range
for i in range(100) do
print(i)
end
二、闰年个数
--写法1
local str = "写法1:闰年有%d个闰年"
print(string.format(str, (2022-2022%4)/4+1))
--写法2
local x = 2022
print("写法2:闰年有"..((x-x%4)/4+1).."个闰年")
--print("写法2:闰年有"..x//4+1.."个闰年") --lua5.3版本支持
--写法3
local this_year = os.date("%Y")
local times = 0
repeat this_year -= 4
times += 1
until this_year<0
print("写法3:闰年有",times,"个闰年")