开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 1491|回复: 22
收起左侧

[完成] 寻求一个逻辑性得问题,逻辑比较差,搞不定

 关闭 [复制链接]
结帖率:94% (29/31)
发表于 2022-8-26 10:30:33 | 显示全部楼层 |阅读模式   广东省深圳市
60精币
  
子程序名返回值类型公开备 注
判断是否上班时间逻辑型 
参数名类 型参考可空数组备 注
上班_时整数型
上班_分整数型
下班_时整数型
下班_分整数型
' 提供4个参数,判断现在是否上班时间
' 返回真假,真就是在上班时间内,假就是下班时间
' 如提供参数:8,10,22,10,表示早上8点10分到晚上22点10分都是在上班时间内
' 如提供参数:8,10,4,10,表示早上8点10分到第二天凌晨4点10分都是在上班时间内


最佳答案

查看完整内容

[e=2].版本 2 .子程序 判断是否上班时间, 逻辑型 .参数 上班_时, 整数型 .参数 上班_分, 整数型 .参数 下班_时, 整数型 .参数 下班_分, 整数型 .局部变量 现行_年, 整数型 .局部变量 现行_月, 整数型 .局部变量 现行_日, 整数型 .局部变量 现行_时, 整数型 .局部变量 现行_分, 整数型 .局部变量 上班时间, 日期时间型 .局部变量 下班时间, 日期时间型 .局部变量 工作时长, 整数型 .局部变量 时间间隔, 整数型 现行_年 = 取年份 ...

评分

参与人数 2好评 +1 精币 +2 收起 理由
gavinfly + 1 + 1 楼下说的对,应该加一层日期判断,是今天还是明天的
afu45 + 1 这个答案当前时间是 12点10分的话 传15, 10, 13, 10结果是错的 应该是真才对.

查看全部评分

结帖率:100% (7/7)

签到天数: 12 天

发表于 2022-8-26 10:30:34 | 显示全部楼层   山东省烟台市
  
子程序名返回值类型公开备 注
判断是否上班时间逻辑型 
参数名类 型参考可空数组备 注
上班_时整数型
上班_分整数型
下班_时整数型
下班_分整数型
变量名类 型静态数组备 注
现行_年整数型 
现行_月整数型 
现行_日整数型 
现行_时整数型 
现行_分整数型 
上班时间日期时间型 
下班时间日期时间型 
工作时长整数型 
时间间隔整数型 
现行_年 = 取年份 (取现行时间 ())
现行_月 = 取月份 (取现行时间 ())
现行_日 = 取日 (取现行时间 ())
现行_时 = 取小时 (取现行时间 ())
现行_分 = 取分钟 (取现行时间 ())
上班时间 = 到时间 (到文本 (现行_年)“年”到文本 (现行_月)“月”到文本 (现行_日)“日”到文本 (上班_时)“时”到文本 (上班_分)“分”)
如果真 (下班_时 ≤ 上班_时)
现行_日 = 取日 (增减时间 (取现行时间 (), #日, 1))
下班时间 = 到时间 (到文本 (现行_年)“年”到文本 (现行_月)“月”到文本 (现行_日)“日”到文本 (下班_时)“时”到文本 (下班_分)“分”)
工作时长 = 取时间间隔 (下班时间, 上班时间, 8)
时间间隔 = 取时间间隔 (取现行时间 (), 上班时间, 8)
如果真 (时间间隔 ≥ 0 时间间隔 ≤ 工作时长)
返回 ()
返回 ()

这个判断的少一点,有点啰嗦。


补充内容 (2022-8-26 11:23):
取年和月是为了防止是某月的最后一天或者某年的最后一天

补充内容 (2022-8-26 13:15):
点评那个当时回复的有点蒙。。。。我判断的就是现行时间,都没开始上班,怎么会是真呢。。。
回复

使用道具 举报

结帖率:94% (29/31)

签到天数: 1 天

 楼主| 发表于 2022-8-26 10:33:19 | 显示全部楼层   广东省深圳市
如果是当天内的话其实还是比较好判断,但是这里涉及到有可能跨天到第二天凌晨,所以有点难搞

点评

跨天的直接+24就可以了   江西省上饶市  发表于 2022-8-26 11:03
判断小时数小于等于4,分钟数小于10,这时候就是上班时间了   福建省泉州市  发表于 2022-8-26 10:45
回复

使用道具 举报

结帖率:100% (18/18)

签到天数: 20 天

发表于 2022-8-26 10:44:18 | 显示全部楼层   福建省泉州市
时间可以用文本型  8时10分0秒  这样的格式      
然后就按照上班时间、下班时间两个参数一组进行传递
时间文本可以取现行时间的年月日后   与参数组合后   到时间()
判断是否在工作时间的区间内    用   取时间间隔()   根据时间间隔返回值判断
时间参数的小时最好都使用24小时制的小时       如果白班和夜班的时间有交叠的情况,建议根据实际需求考虑增加一个白班或夜班的标识
回复

使用道具 举报

结帖率:90% (161/179)

签到天数: 3 天

发表于 2022-8-26 10:56:23 | 显示全部楼层   广东省佛山市
用取现行时间,然后取文本中间,取文本左边,取文本右边,把每个时间段的数字取出来最后对比
回复

使用道具 举报

结帖率:95% (18/19)

签到天数: 20 天

发表于 2022-8-26 10:56:53 | 显示全部楼层   广东省中山市
  
子程序名返回值类型公开备 注
判断是否上班时间逻辑型 
参数名类 型参考可空数组备 注
上班_时整数型
上班_分整数型
下班_时整数型
下班_分整数型
' 提供4个参数,判断现在是否上班时间
' 返回真假,真就是在上班时间内,假就是下班时间
' 如提供参数:8,10,22,10,表示早上8点10分到晚上22点10分都是在上班时间内
' 如提供参数:8,10,4,10,表示早上8点10分到第二天凌晨4点10分都是在上班时间内
如果真 (上班_时 ≥ 8 上班_分 ≥ 10)
如果真 (下班_时 ≤ 22 下班_分 ≤ 10)
返回 ()

如果真 (上班_时 ≥ 8 上班_分 ≥ 10)
如果真 (下班_时 ≤ 4 下班_分 ≤ 10 下班_时 ≤ 23 下班_分 ≤ 59)
返回 ()

返回 ()

补充内容 (2022-8-26 10:58):
搞错了,分搞错了[size]
回复

使用道具 举报

结帖率:58% (15/26)

签到天数: 19 天

发表于 2022-8-26 11:02:03 | 显示全部楼层   江西省上饶市
  
子程序名返回值类型公开备 注
判断是否上班时间逻辑型 
参数名类 型参考可空数组备 注
上班_时整数型
上班_分整数型
下班_时整数型
下班_分整数型
判定时间日期时间型
变量名类 型静态数组备 注
判定_时整数型 
判定_分整数型 
如果真 (是否为空 (判定时间))
判定时间 = 取现行时间 ()
判定_时 = 取小时 (判定时间)
判定_分 = 取小时 (判定时间)
如果真 (下班_时 ≤ 上班_时)
下班_时 = 24 + 下班_时
如果真 (判定_时 ≤ 上班_时)
判定_时 = 24 + 判定_时
判断 (判定_时 = 上班_时)
如果 (判定_分 ≥ 上班_分)
返回 ()
返回 ()

判断 (判定_时 = 下班_时)
如果 (判定_分 ≤ 上班_分)
返回 ()
返回 ()

判断 (判定_时 > 上班_时 判定_时 < 下班_时)
返回 ()
返回 ()

补充内容 (2022-8-26 11:02):
是我理解错了吗,应该是有个判定时间吧,或者取当前时间判定,是我没理解吗,懵逼了

补充内容 (2022-8-26 11:04):
测试一下对吗,按道理是对的,逻辑大概这样,上班下班分钟的等于还是等于大于小于根据自己的逻辑改
回复

使用道具 举报

结帖率:95% (18/19)

签到天数: 20 天

发表于 2022-8-26 11:02:53 | 显示全部楼层   广东省中山市
  
子程序名返回值类型公开备 注
判断是否上班时间逻辑型 
参数名类 型参考可空数组备 注
上班_时整数型
上班_分整数型
下班_时整数型
下班_分整数型
' 提供4个参数,判断现在是否上班时间
' 返回真假,真就是在上班时间内,假就是下班时间
' 如提供参数:8,10,22,10,表示早上8点10分到晚上22点10分都是在上班时间内
' 如提供参数:8,10,4,10,表示早上8点10分到第二天凌晨4点10分都是在上班时间内
如果真 (上班_时 ≥ 8 上班_分 ≥ 10 上班_分 > 8)
如果真 (下班_时 ≤ 22 下班_分 ≤ 10)
输出调试文本 (“正常上班”)
返回 ()
如果真 (下班_时 ≤ 4 下班_分 ≤ 10 下班_时 ≤ 23)
输出调试文本 (“凌晨上班”)
返回 ()

返回 ()
回复

使用道具 举报

结帖率:95% (18/19)

签到天数: 20 天

发表于 2022-8-26 11:05:40 | 显示全部楼层   广东省中山市
  
子程序名返回值类型公开备 注
判断是否上班时间逻辑型 
参数名类 型参考可空数组备 注
上班_时整数型
上班_分整数型
下班_时整数型
下班_分整数型
' 提供4个参数,判断现在是否上班时间
' 返回真假,真就是在上班时间内,假就是下班时间
' 如提供参数:8,10,22,10,表示早上8点10分到晚上22点10分都是在上班时间内
' 如提供参数:8,10,4,10,表示早上8点10分到第二天凌晨4点10分都是在上班时间内
如果真 (上班_时 ≥ 8 上班_分 ≥ 10 上班_分 > 8)
如果真 (下班_时 ≤ 22 下班_分 ≤ 10 下班_时 < 22)
输出调试文本 (“正常上班”)
返回 ()
如果真 (下班_时 ≤ 4 下班_分 ≤ 10 下班_时 ≤ 23 下班_时 < 4)
输出调试文本 (“凌晨上班”)
返回 ()

返回 () ' 这个应该可以了


补充内容 (2022-8-26 11:07):
还是不对
回复

使用道具 举报

结帖率:58% (15/26)

签到天数: 19 天

发表于 2022-8-26 11:07:24 | 显示全部楼层   江西省上饶市

我是不是理解错了,不应该有个判定时间吗
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:wp@125.la
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表