




已阅读5页,还剩7页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
统 计 与 分 类一、程序基本设计思路:统计与分类是数据处理经常使用的一种重要方法。这类程序的基本部分包括:循环检索判断、分类计数累加。利用数组和下标变量进行分类统计。二、典型课本例题,重点理解各数组的元素代表什么值。1、统计学生每周上网时间,见课本第72页。2、统计学生测试后的答题情况,见课本第74页。三、习题扩充:1、写运行结果10 DIM A(3)20 FOR I=1 TO 1030 READ X40 IF X=85 THEN A(1)=A(1)+150 IF X=60 THEN A(2)=A(2)+160 IF X=85 THEN A(1)=A(1)+1:GOTO 7050 IF X=60 THEN A(2)=A(2)+1:GOTO 7060 A(3)=A(3)+12、统计十个数中的正数、负数、零各有多少个。10 DIM A(2)20 FOR I=1 TO 1030 READ X40 K = 50 A(K)= A(K)+ 160 NEXT I65 PRINT “负数,零,正数的个数分别是:”;70 FOR I=0 TO 280 PRINT A(I);90 NEXT I100 DATA 7,0,3,-4,6,-3,0,-9,8,1110 END3、下面的程序功能是产生100个 1,10 之间的整数,并把数K(1K10)的出现次数记入数组元素A(K)。10 DIM A(10)20 FOR J=1 TO 10030 K = INT( )+ 140 A(K)= 50 NEXT J60 FOR J=1 TO 1070 PRINT ;80 NEXT J90 END4、考试成绩分档统计。某班有50名学生,要对本次期中考试的专业成绩(满分为100)进行分档统计,按每10分一档,统计出各档次的人数。10 DIM A(10)20 FOR I=1 TO 30 INPUT X40 K= 50 A(K)= A(K)+160 NEXT I70 FOR I=0 TO 980 PRINT I*10;“”;I*10+9, 90 NEXT I100 PRINT “100”, 110 END求 极 值一、程序基本设计思路:求极值又称作求最值,即是从多个数据中找出最大的或最小的数据,一般情况下用简单变量即可以求出,只要加设存放最值的变量就可以了,最值的初值一般取所给数据中的第一个数据。此后根据比较再找出所有数据中的最值。 有时求极值问题还会要求输出极值在数据序列中的原始位置,这就需要增设一个记录位置的变量。利用数组可以方便地完成此类问题。二、课堂练习:1、从键盘输入十个数,找出其中的最大值和最小值,并输出它们是第几个输入的。10 DIM A(10)20 FOR I=1 TO 1030 40 NEXT I50 MAX= :MIN = :M= :N= 60 FOR K= TO 1070 IF THEN MAX=A(K): 80 IF A(K) MIN THEN :N = K90 NEXT K100 FOR I=1 TO 10110 PRINT A(I);120 NEXT I130 PRINT140 PRINT “最大数及位置:”; 150 PRINT “最小数及位置:”; 160 END2、将给定的十个数中的最大值放在第一个位置,要保证原有数据值不丢失,重新输出这十个数。10 DIM A(10)20 FOR I=1 TO 1030 READ A(I)40 IF THEN 50 NEXT I60 FOR I= 1 TO 1070 PRINT A(I);80 NEXT I90 DATA 89,76,95,54,60,72,45,87,75,68100 END3、歌曲大赛中,十个评委对某演员进行评分,要求去掉一个最高分,去掉一个最低分,给出该演员的平均得分。10 DIM F(10)20 FOR I=1 TO 1030 : PRINT F(I);40 NEXT I50 PRINT60 M=F(1):N = M: 70 FOR I = 2 TO 1080 IF MF(I) THEN 90 100 S = S + F(I)110 NEXT I120 PRINT “去掉一个最高分:”; 130 PRINT “去掉一个最低分:”; 140 PRINT “该演员平均得分:”; 145 DATA 9.5,9.3,8.9,9.1,9.2,8.8,9,9.4,9.6,9150 END 4、4个学生每人考了5门课,求每个学生的平均分文档由本人精心搜集和整理,喜欢大家用得上,非常感谢你的浏览与下载。凡本厂职工应热爱电厂、热爱岗位、热爱本职工作,发扬“团结务实、争创一流,立足岗位,爱厂敬业,尽职尽责,不断提高工作质量和工作效率,圆满完成各项生产和工作任务,为华能的建设和发展作出贡献2019整理的各行业企管,经济,房产,策划,方案等工作范文,希望你用得上,不足之处请指正10 DIM 20 FOR I= 1 TO 425 INPUT N$(I)30 FOR J=1 TO 540 INPUT A(I,J)50 NEXT J55 NEXT I60 PRINT “姓名”,“平均分”70 FOR I=1 TO 480 PRINT ,85 S = 090 FOR J=1 TO 5100 110 NEXT J120 AVER = 130 PRINT AVER140 NEXT150 END思考:若输入n个学生的m门课程的成绩,求每门课程的平均成绩,程序又该如何编写?排 序 数据处理中,经常需要将一批无序的数据,按从大到小或从小到大进行排列整理,这一过程叫排序。排序的方法很多,但都必须利用数组和下标变量。顺 序 比 较 排 序 法一、顺序比较排序法的思路(以升序为例):将所有的数据存储在一个数组A(n)中。先将A(1)与其后的每个数进行比较,若有数据比A(1)小,则交换两数据,直至找出其中的最大值存入A(1)中,然后进行第二轮处理,将A(2)与其后的每个数进行比较,若有数据比A(2)小,则交换两数据,按此道理依次类推,直至最后两个数进行比较,将较小数放在数组的倒数第二个元素中,将大数放在数组的最后一个元素中。程序设计步骤: 定义一个数组A(n) 把n个数据保存在数组中(利用循环完成) 对每个数据进行比较排序处理(外循环控制总的比较轮数,内循环控制每轮的比较次数;也有说法是:外循环控制比较的两个数中的第一个数,内循环控制比较的两个数中的第二个数)。 将排好序的数据输出。(利用循环完成)二、典型程序范例例1:将N个由键盘输入的数据按从小到大的顺序排列起来10 INPUT “N=”;N20 DIM A(N)30 FOR I=1 TO N40 50 NEXT I60 FOR I=1 TO 70 FOR J= TO 80 IF THEN 90 NEXT J100 NEXT I备注:110 FOR I=1 TO N 有时为了减化程序,可省略110120 至130语句。添加如下语句:130 NEXT I 95 PRINT A(I);140 END 105 PRINT 另外,还可用记录位置的方法来取每一轮中的最值,此轮比较完后,要将最该轮的最值放入相应的数组元素中。(相应程序见练习)三、巩固练习1、写出下列程序的运行结果5 DATA 52,46,13,48,95,62,78,92,63,5710 DIM A(10)20 FOR I=1 TO 1030 READ A(I)40 NEXT I50 FOR I=1 TO 1060 FOR J=1 TO 1070 IF A(I)A(J) THEN K=J120 NEXT J130 IF KI THEN 140 NEXT I150 PRINT “Data after sorting:”160 FOR I=1 TO 10170 PRINT A(I);180 NEXT I190 END4、随机产生100个 -500,500 之间的整数,并找出其中第K大的数10 DIM A(100)20 K30 FOR I=1 TO 10040 A(I)= INT( * RND)- 500 :PRINT A(I)50 NEXT I60 PRINT70 FOR I=1 TO K80 FOR J= TO 10090 IF THEN SWAP A(I),A(J)100 NEXT J110 NEXT I120 PRINT “A(”;K;“)=”; 130 END冒 泡 排 序 法一、程序设计思路(降序为例) 冒泡排序法是用相邻两数进行比较,每次比较的结果总是把相邻两数中的大数存入下标较小的单元,把小数存入下标较大的单元。然后再把小数与下一个数比较。这样通过N-1次比较,就把最小的数存入最大下标值的存贮单元。这种比较好象水底的气泡,逐步往水面上冒一样,故而称之为冒泡法。 在冒泡排序法中,设置了一个称为特征值的存贮单元(用简单变量表示,数字1表示排好序,0表示未排好序),设其初值为1。当某一轮在内循环比较时,有任何一次交换,就将特征值变量赋值为0;若在内循环比较过程中没有交换,则特征值变量仍保持为1,这时说明顺序已排好,结束排序。二、典型例题例:将N个由键盘输入的数据按从小到大的顺序排列起来10 INPUT “N=”;N20 DIM A(N)30 FOR I=1 TO N40 50 NEXT I60 FOR I=1 TO 70 A=180 FOR J= TO 90 IF THEN :A = 0100 NEXT J110 IF THEN 130120 NEXT I130 FOR I=1 TO N140 150 NEXT I160 END在上述程序中,还可用以下两语句:60 FOR I= TO STEP -180 FOR J= TO 补充知识:脱 壳 排 序 法一、程序设计思路:先取一个步长(一般为数据个数的一半),反复比较相距这一步长的两个数,直到所有相隔这一步长的数都有序为止。然后减少步长,重复上述过程直到步长为1,所有的数均有序为止。其中需设特征值,初始值为1,在每一轮比较中若有数据交换,则特征值变为0,否则还为1。一轮结束后,若A的值仍为1,说明该轮比较中相隔该步长的所有数均已有序,则改变步长继续比较;若A=0,说明该轮比较中进行了交换,这时需按原步长重新比较一遍。二、程序范例:例:把十个数按从小到大的顺序排列起来。10 DIM A(10)20 FOR I=1 TO 1030 READ A(I)40 NEXT I50 K = 1060 K = 70 A = 180 FOR I = 1 TO 10 - K90 IF THEN SWAP :A=0100 NEXT I110 IF A = 0 THEN 120 IF K 1 THEN 130 FOR I = 1 TO 10140 PRINT A(I);150 NEXT I160 DATA 9,8,1,7,6,3,4,5,4,1170 END注:以上三种排序法中,就熟练掌握顺序比较法和冒泡法。检 索检索就是从一组数据中查找一个或多个数据项,是数据处理的一种重要方法。一般分为顺序检索和对分检索两种。顺序检索可用于任何数据组,而对分检索只能用于有序的数据组。一、顺 序 检 索l 程序设计思路:把多个数据存入数组中,根据检索条件逐一在各数组元素中比较查找。l 典型例题从键盘任意输入一个字符串,判断它是否是字符串“SYMBOLIC INSTRUCTION CODE”的子串。如果是,则输出YES,并指出它在该字符串中的开始位置;如果不是,则输出NO。10 A$ = “SYMBOLIC INSTRUCTION CODE”20 N = LEN(A$)30 INPUT B$40 M = LEN(B$)50 FOR I=1 TO 60 C$ = 70 IF C$ = B$ THEN PRINT “YES”,“I=”;I: 80 NEXT I90 PRINT “NO”100 END二、对 分 检 索对分检索是对已排序的数据进行检索,可以提高查找速度。l 程序设计思路:首先将数据大小按递增(或递减)顺序排好,将所需项与被检索数据组的中间项进行比较,如果中间项即所需项,则查找结束。否则,如果中间项的值大于所需项,则所需项在数据组的前半部(后半部)中;反之,则所需项在数据组的后半部(前半部)中。然后,按上述步骤在数据组的前半部或后半部继续查找。并以此类推,直到所需项找到为止。这种方法叫对分法,也叫二分法。l 典型例题有20个数已按递增次序排好,存放在数组A中,由键盘输入一个数,查找此数是否该数组中的数,如果是,输出其顺序号;如果不是,输出不是的信息。10 N=2020 DIM A(N)30 FOR I=1 TO N40 READ A(I)50 NEXT I60 INPUT
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年新能源项目投资合同:绿色能源产业合作框架协议
- 试用期解除劳动合同通知书范本
- 2025-2030医疗废弃物处理技术规范与市场规范化研究报告
- 2025-2030冷冻牛肉储存技术突破与损耗控制方案报告
- 家政服务合同协议书标准范本
- 2025年废弃矿井资源再利用技术路径与产业技术转移与扩散研究报告
- 基于工业互联网的2025年安全多方计算技术创新与案例分析报告
- 瑞康医药2022年度社会责任与绿色发展报告:员工职业发展与归属感
- 联影医疗2023可持续发展报告:医疗设备行业的ESG标准与监管动态
- KK医疗设备公司环境与公司治理报告:2022-2023监管政策执行评估
- 光伏项目开发培训课件
- 职业年金政策讲解
- 智联猎头企业薪酬调研白皮书-2025年年中盘点
- 艾梅乙反歧视培训课件
- GB/T 10069.3-2024旋转电机噪声测定方法及限值第3部分:噪声限值
- 中国农业银行笔试题库(含答案)
- GA 1808-2022军工单位反恐怖防范要求
- GB 9706.202-2021医用电气设备第2-2部分:高频手术设备及高频附件的基本安全和基本性能专用要求
- GB/T 4745-2012纺织品防水性能的检测和评价沾水法
- 残疾人基本康复服务目录(2021年版)
- 全员安全生产责任制度
评论
0/150
提交评论