Lua获取一年中的日数
2015-9-8 19:51:44
收藏:0
阅读:105
评论:2
我正在尝试编写一个脚本,使用以下公式确定星历:
a = 上一个闰年年份的简写(如果当年是闰年,则为4年前)
b = 366 + (365 * ((当年年份简写 - 1) - 上一个闰年年份的简写)
c = 年的第几天 - 月的第几天
d = 月的第几天
e = (每分钟的秒数 + (每小时的分钟数 * 60))/ 1440
f = 36525
星历 = ((a + b + c + d + e)/f)*100000
分离 x.y 为 x 和 y
如果世纪大于19,则在 x 的开始处添加 1- 并获取 y 的前两位数字
日期为 x.y
然而,我似乎无法找到获取 年的第几天 的方法。我目前的脚本是:
function isLeapYear(year)
return year%4==0 and (year%100~=0 or year%400==0)
end
function lastLeapYear(year)
if(isLeapYear(year))
result = strsub(year,2,4) - 4
else
year = year - 1
if(isLeapYear(year))
result = strsub(year,2,4)
else
year = year - 1
if(isLeapYear(year))
result = strsub(year,2,4)
else
year = year - 1
if(isLeapYear(year))
result = strsub(year,2,4)
else
result = "Invalid"
end
end
end
end
return result
end
function stardate()
yearf = os.date("%Y")
yearh = os.date("%y")
a = lastLeapYear(yearf)
b = (366 + (365 * (yearh - a)))
c = (!!DayOfYear!! - os.date("%d"))
d = os.date("%d")
e = (os.date("%S") + (os.date("%M") * 60))/1440
f = 36525
st = ((a + b + c + d + e)/f)*100000
!!Separate st into x and y!!
if(strsub(yearf,0,2) > 19)
diff = strsub(yearf,0,2) - 19
lead = diff "-" lead
end
return lead.dec
end
如果我的代码中有任何其他错误,请指出,因为我几乎没有 Lua 经验。
点赞
用户107090
每年的天数可以通过os.date("*t").yday 或者 os.date("%j")来获得。
第一个表达式会返回一个数字;第二个表达式会返回一个字符串(可以通过 tonumber 显示转化为数字,或者在计算运算中隐式转化为数字)。
2015-09-09 00:57:27
评论区的留言会收到邮件通知哦~
推荐文章
- 如何将两个不同的lua文件合成一个 东西有点长 大佬请耐心看完 我是小白研究几天了都没搞定
- 如何在roblox studio中1:1导入真实世界的地形?
- 求解,lua_resume的第二次调用继续执行协程问题。
- 【上海普陀区】内向猫网络招募【Skynet游戏框架Lua后端程序员】
- SF爱好求教:如何用lua实现游戏内调用数据库函数实现账号密码注册?
- Lua实现网站后台开发
- LUA错误显式返回,社区常见的规约是怎么样的
- lua5.3下载库失败
- 请问如何实现文本框内容和某个网页搜索框内容连接,并把网页输出来的结果反馈到另外一个文本框上
- lua lanes多线程使用
- 一个kv数据库
- openresty 有没有比较轻量的 docker 镜像
- 想问一下,有大佬用过luacurl吗
- 在Lua执行过程中使用Load函数出现问题
- 为什么 neovim 里没有显示一些特殊字符?
- Lua比较两个表的值(不考虑键的顺序)
- 有个lua简单的项目,外包,有意者加微信 liuheng600456详谈,最好在成都
- 如何在 Visual Studio 2022 中运行 Lua 代码?
- addEventListener 返回 nil Lua
- Lua中获取用户配置主目录的跨平台方法
任何找不到正确格式字符串的人可以在 http://docs.rainmeter.net/manual/measures/time 上找到比 http://www.lua.org/pil/22.1.html 更高级的列表(这是我正在查找的地方)。