可以将数据封装到表中,再使用系统的函数来排序(根据需要,可写个比较函数,以控制从小到大或从大到小进行排序),之后输出结果。下面在手机上用易历知食软件里的Lua程序设计来编写个示例,供参考。
手机上的代码如下图:
手机上运行结果如下图:
在手机上使用易历知食软件内部的Lua程序设计来编程,使用函数(function)和循环(for)语句实现,程序和运行结果如下图所示:
结果如下:
Lua文本程序代码如下:
function getGCD(a,b)local i
local m
local t=1
if a>b then
m=a
else
m=b
end
for i=1,m,1 do
if (a%i==0) and (b%i==0) then
t=i
end
end
return t
end
--下面调用函数来输出最大公约数
a=27
b=15
t=getGCD(a,b)
printf("%d和%d的最大公约数是%d\n",a,b,t)
a=48
b=32
t=getGCD(a,b)
printf("%d和%d的最大公约数是%d\n",a,b,t)
一:
new lua().DoFile("myLua.lua") //执行lua脚本 /myLua.lua:要 执行的lua的脚本名字
new lua().DoString("num = 2") //读取脚本
注意:脚本文件必须和工程目录所在是同一个路径不然会找不到lua的 脚本
对lua脚本的位置放置:
1)直接将lua文件,放在工程目录下面的Debug文件夹下
2)将lua脚本的属性中 "复制到输出目录" 选择“始终复制”
--1.导入luanet程序集,该程序集负责 lua call C#
require “luanet”
--2.加载程序集(命名空间)
uanet.load_assembly(“System”) // 加载程序集(我们说过程序集其实就是.exe或者.dll文件)
--3.获取类别(获取类名)
Test = luanet.import_type(“System.Test”) //引入类(Test就是类名)
--4.调用构造函数初始化C#脚本的类对象
--调用无参数的构造函数
-- test = Test()
--调用有参数的构造函数 ----int
-- test = Test(10)
--调用有参数的构造函数 ----string
-- test = Test("10")
-- lua调用C#构造函数规则--->自动匹配最近的那个
-- -对于某些情况并不适用,比如说C#函数中有两个一个参数的构造函数重载时即会发生匹配错误的情况
--- 这种情况我们需要手动指定调用哪个构造函数
test_argInt = luanet.get_constructor_bysig(Test,"System.String")
t = test_argInt(3)
-- 5.调用C#属性
print(t.LanguageNume)
-- 调用Test类中的TestPrint()方法,使用的是":"
t:TestPrint(10)
-- 调用Test类中的静态方法,使用的是"."
Test.TestStatciPrint(9)
--调用带有ref参数的方法
t:RefMethod(8)
--调用带有out参数的方法(带有out的参数可以不写,即不传参数)
-- var,var2 = t:OutMethod("hello")
-- print(var2)
-- v1,v2,v3,v4 = t:OutMethod(10)
tb = t:OutMethod(10)
print(type(tb))
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)