| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 492 人关注过本帖
标题:[求助]请教一个简单的算法
只看楼主 加入收藏
piaomiao
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2006-10-7
收藏
 问题点数:0 回复次数:5 
[求助]请教一个简单的算法

要判断一个日期previous_date与当前日期current_date时间间隔是否在一年内,
如果间隔在一年内,标志flag=Y,否则flag=N,怎么实现?

if (current_date.year - previous_date.year) <=1 then
.........
else flag = N

自己想了一个,如下,不知有没错误?而且太复杂,有没有更好得算法?

if (current_date.year - previous_date.year) <=1 then
if (current_date.year - previous_date.year) <=1 then
if current_date.month<=previous_date.month then
if (current_date.month=previous_date.month && current_date.day>=previous_date.day) then
flag=Y
else flag=N
else flag =Y
else flag = N

请帮帮忙,谢谢!

搜索更多相关主题的帖子: 算法 
2006-10-07 19:30
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
收藏
得分:0 
当前日期是表示成年月日的形式直接比较年就可以了.

倚天照海花无数,流水高山心自知。
2006-10-07 19:35
C语言学习者
Rank: 4
等 级:贵宾
威 望:13
帖 子:1278
专家分:0
注 册:2006-9-26
收藏
得分:0 
你的问题不只这样,请讲清楚一点。

谁有强殖装甲第二部,可以Q我460054868
2006-10-07 19:41
piaomiao
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2006-10-7
收藏
得分:0 
不清楚么,两个日期都是表示成yyyymmdd的形式的,判断两个时间间隔是否小于12个月,是的话,置标志flag为Y,否则为N

2006-10-07 20:43
C语言学习者
Rank: 4
等 级:贵宾
威 望:13
帖 子:1278
专家分:0
注 册:2006-9-26
收藏
得分:0 

用第2楼想法就行。


谁有强殖装甲第二部,可以Q我460054868
2006-10-07 20:47
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
收藏
得分:0 

首先判断年份:如果是>1则直接输出N,是0输出Y.如果为1则继续判断月份.(注意前面年份是哪个大)
同样的相差12以内输出Y,否则看号数.依次判断(各个月份所有的天数书不同的.)
abs(y1-y2)并且标记以y1>y2为1,y2<y1为0;以方面以后的比较.


倚天照海花无数,流水高山心自知。
2006-10-07 20:54
快速回复:[求助]请教一个简单的算法
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.028172 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved