1. (循环语句的嵌套使用)有 1,2,3,4四个数字,能组成多少个互不相同且无重复数字的 三位数,并输出在屏幕上面
2. 计算斐波那携数列的前20个数字,并输出在屏幕上面 。指的是这样一个数列(1,1,2,3,5,8,13...21,....)要用到递归函数
3. 输出一个* 的三角形
4. 9*9乘法表(不同结构的输出)
--有 1,2,3,4四个数字,能组成多少个互不相同且无重复数字的 三位数,并输出在屏幕上面
for i = 1,4 ,1 do
for j = 1,4,1 do
for p = 1, 4,1 do
if i ~= j and i ~= p and j ~= p then
print(i..j..p)
end
end
end
end
--计算斐波那携数列的前20个数字,并输出在屏幕上面 。指的是这样一个数列(1,1,2,3,5,8,13...21,....)
--要用到递归函数
function fb(i)
if i<=2 and i>0 then
return 1
else
local j = fb(i-1)+fb(i-2)
return j
end
end
i = 1
while i<=20 do
print("第"..i.."个数是"..fb(i))
i = i+1
end
-- 输出一个* 的三角形
for x = 1,7,1 do
local j = ""
for y = 1,7,1 do
if y <= x then
j = j.."*"
end
end
print (j)
end
--[[
x=1,y=1时输出* y=2,34567 都不输出东西 *
x=2 y=1,2 时输出, y=34567不输出 **
x=3 y=123输出 ,y=4567不输出 ***
.......以此类推--]]
--[[
*
**
***
****
*****
******
*******
--]]
--9*9乘法表 结果在个位数补领0。为了格式的好看
for i = 1,9,1 do
local x = ""
for j = 1,9,1 do
if j>=i then
n = i*j
if n<=9 then
n = "0"..n
end
x = x..i.."*"..j.."="..n.." "
end
end
print(x)
end
--[[
1*1=01 1*2=02 1*3=03 1*4=04 1*5=05 1*6=06 1*7=07 1*8=08 1*9=09
2*2=04 2*3=06 2*4=08 2*5=10 2*6=12 2*7=14 2*8=16 2*9=18
3*3=09 3*4=12 3*5=15 3*6=18 3*7=21 3*8=24 3*9=27
4*4=16 4*5=20 4*6=24 4*7=28 4*8=32 4*9=36
5*5=25 5*6=30 5*7=35 5*8=40 5*9=45
6*6=36 6*7=42 6*8=48 6*9=54
7*7=49 7*8=56 7*9=63
8*8=64 8*9=72
9*9=81
--]]
for m=1,9 do -- for循环1到9
local s = "" -- 定义一个用来输出的字符串S
for n=1,9 do -- 内层循环1到9
if n <= m then -- 注意if后面要加then
s = s..m.."x"..n.."="..m*n -- ..表示字符串拼接
if n ~= m then -- 如果n不等于m 就怎样怎样
s = s..", " -- 就在这句话的后面加上逗号","
end
end
end
print(s)
end
--[[
1x1=1
2x1=2, 2x2=4
3x1=3, 3x2=6, 3x3=9
4x1=4, 4x2=8, 4x3=12, 4x4=16
5x1=5, 5x2=10, 5x3=15, 5x4=20, 5x5=25
6x1=6, 6x2=12, 6x3=18, 6x4=24, 6x5=30, 6x6=36
7x1=7, 7x2=14, 7x3=21, 7x4=28, 7x5=35, 7x6=42, 7x7=49
8x1=8, 8x2=16, 8x3=24, 8x4=32, 8x5=40, 8x6=48, 8x7=56, 8x8=64
9x1=9, 9x2=18, 9x3=27, 9x4=36, 9x5=45, 9x6=54, 9x7=63, 9x8=72, 9x9=81
--]]