24小时热门版块排行榜    

CyRhmU.jpeg
查看: 643  |  回复: 4

yhwsmile

金虫 (小有名气)

[求助] 计算各站最低温度>=2℃与<=2℃之间的天数,并挑出时段最长的,谢谢已有2人参与

我现在要计算一年中最低温度>=2℃与<=2℃之间的天数,由于一年中这样的时段比较多,我现在要挑出时段最长的那个,并输出最长时段的起始和结束日期,下面是我的程序和测试数据,计算有误,请各位大虾帮忙,优化一下程序,谢谢。
回复此楼

» 本帖附件资源列表

  • 欢迎监督和反馈:小木虫仅提供交流平台,不对该内容负责。
    本内容由用户自主发布,如果其内容涉及到知识产权问题,其责任在于用户本人,如对版权有异议,请联系邮箱:xiaomuchong@tal.com
  • 附件 1 : 50431.txt
  • 2015-01-20 11:19:55, 24.95 K
  • 附件 2 : test.f90
  • 2015-01-20 11:22:51, 1.53 K

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

浔荆

木虫 (正式写手)

【答案】应助回帖

感谢参与,应助指数 +1
代码里最好加上注释,纯代码贴上来别人根本不知道你想算什么
另外数据也没有说明,每一列数据代表什么?
问题描述也不够仔细,请说明自己想解决什么问题,基本思路是什么,出错的提示是什么,可能的原因是什么。
2楼2015-01-20 11:52:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yhwsmile

金虫 (小有名气)

引用回帖:
2楼: Originally posted by 浔荆 at 2015-01-20 11:52:03
代码里最好加上注释,纯代码贴上来别人根本不知道你想算什么
另外数据也没有说明,每一列数据代表什么?
问题描述也不够仔细,请说明自己想解决什么问题,基本思路是什么,出错的提示是什么,可能的原因是什么。

不好意思,没说明白,原帖已经无法编辑修改。
我在这说明一下:
数据为气象站气温日资料,测试数据为1961年数据:站号、经度、纬度、海拔、年、月、日、平均气温、最高、最低气温
提出问题:
比如最低温度序列:1,2,3,3,1.5,2.2,3.2,4.5,3.3,3.5,2.2,1.8,1.5
上述序列有两个时段在>=2~<=2之间,分别是2,3,3,1.5和2.2,3.2,4.5,3.3,3.5,2.2,1.8,两个时段中第二个时段要比第一个时段长,由此输出第二个时段的开始(5月6日)与结束时间(5月12日)。
程序思路:
1、先将数据按年读入存放。
2、假设有50个这样的时段,进行循环。
3、按日循环判断,判断第一个>=2数据,跳出循环,记录开始日期,以>=2数据下一天开始判断,若出现<=2数据,跳出循环,记录结束时间,并确定时长,以此类推进行循环,将每个时段记录下来。
4、判断时段最长,输出最长时段的起始日期。
存在问题:
程序计算后,挑出的时段只有第一个是对的,后面都不对。估计问题出在循环判断上。

不知道我说清楚了没
3楼2015-01-20 14:31:19
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

匿名

用户注销 (职业作家)

Matlab专家

感谢参与,应助指数 +1
本帖仅楼主可见
4楼2015-01-20 15:25:02
已阅   申请程序强帖   回复此楼   编辑   查看我的主页

yhwsmile

金虫 (小有名气)

引用回帖:
4楼: Originally posted by yanze at 2015-01-20 15:25:02
>=2~<=2   是啥意思?

气温数据:就是说先判断,假如第一个数据≥2°后面的均大于2°直到出现≤2°的数据
5楼2015-01-20 15:28:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 yhwsmile 的主题更新
信息提示
请填处理意见