急~~~一道PASCAL程序题~~~诶,人在江湖飘,谁能不挨刀

来源:百度知道 编辑:UC知道 时间:2024/05/16 11:07:12
虽然有点鸡婆,但事先申明我是初学者。各位高手请帮忙了~~~有点急啊~~~人在江湖飘,谁能不挨刀~~~

已知一个表格的两列数组,为13个月的a和b的值
a b
2008-09 4.6 9.1
2008-08 4.9 10.1
2008-07 6.3 10.0
2008-06 7.1 8.8
2008-05 7.7 8.2
2008-04 8.5 8.1
2008-03 8.3 8.0
2008-02 8.7 6.6
2008-01 7.1 6.1
2007-12 6.5 5.4
2007-11 6.9 4.6
2007-10 6.5 3.2
2007-09 6.2 2.7

在所有a>b的月份中找出差距最大的月份

看完的高手请尽快回复,谢谢~~~
PS请尽量用WORD先注明流程图,再用简明的方法做(呼应开头,我是只菜鸟啊~~~)
a和b分别是月份旁的两列数据。

应是先输入数组变量,得出a>b的月份再存入另一个数组变量中去,再用冒泡排序,找出a-b的最大值,再输出相应的月份,如"200709".我的想法是这样,不知是否妥当?该怎样写流程图,并编程呢?

用pascal先找出所有a>b的月份,再在其中找出a,b差距最大的月份啊 ~~~

谢谢大家能耐心地看完我的补充说明~~~

排序就不必了,只要保存一个a>b的最小值
即:if (a[i]-b[i]>0) and (a[i]-b[i]<min) then begin min:=a[i]-b[i];min1:=i;end;
pascal编程重在算法和数据结构,MS流程图不是很必要(至少应付NOIP没有问题)
注意:min一定要赋初值32767
i为循环变量,用于控制月份。
实际上你的月份可以用字符串数组存贮,这样实现可以容易些
假设你用st[1..13]存储月份,最后打印writeln(st[min1]);
st[1]='200809',st[2]='200808'

能写的再清楚点行不?把数字代表什么都写出来。。。

能不能写清楚点,我看不懂。(a的值是什么,b是什么?)

写清楚些