斐波那契数列、角谷猜想、99乘法表 、冒泡排序
2019-05-28 本文已影响0人
祝你万事顺利
使用Lua实现:
-- 斐波那契数列
function Fibonacci(n)
if n==0 then
return 0;
elseif n==1 or n==2 then
return 1;
else
return Fibonacci(n-2) + Fibonacci(n-1);
end
end
print(Fibonacci(3));
-- 角谷猜想
function CornerValley(n)
-- if a==1 then
-- return 1;
-- end
-- if a%2 == 0 then
-- return CornerValley(a/2);
-- elseif a%2 == 1 then
-- return CornerValley(a*3 + 1);
-- end
while n~=1 do
if n%2 == 1 then
n = n*3 + 1;
else
n= n/2;
end
end
end
print(CornerValley(233));
-- 99乘法表
function Multiplication()
for i = 1, 9 do
str = ""
for j = 1, i do
str =str .. (i.."*"..j.."="..i*j.." ");
end
print(str);
end
end
Multiplication();
-- 冒泡排序
ListTable = {1,3,9,6,2,4};
function PopSort(Table)
for i = 1, #Table-1 do
for j = i, #Table do
if Table[i] > Table[j] then
Table[i],Table[j] = Table[j],Table[i];
end
end
end
end
PopSort(ListTable);
output = "";
for i = 1, #ListTable do
output = output .." ".. ListTable[i];
end
print(output);