




免费预览已结束,剩余6页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
中山大学面向对象Delphi期中作业答案(提交Delphi源代码和exe文件)一、编写相应的Delphi程序,分别实现以下科学计算功能:1 利用公式 编出程序计算自然对数底e,精确到10-6 。解答unit NaturalLog;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls,math;type TForm1 = class(TForm) Label1: TLabel; Edit1: TEdit; Button1: TButton; Button2: TButton; Label2: TLabel; Label3: TLabel; Label4: TLabel; Edit2: TEdit; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); private Private declarations public Public declarations end;var Form1: TForm1;implementation$R *.dfmprocedure TForm1.Button1Click(Sender: TObject); function factorial(n:integer):double; var i:integer; prod:double; begin prod:=1; if n0 then begin for i:=2 to n do prod:=prod*i; factorial:=prod; end else if n=0 then factorial:=1 else showmessage(阶乘参数不能为负数!) end;var eps,addor,s:double; i,max_i:integer;begin eps:=strtofloat(edit1.Text); max_i:=strtoint(edit2.Text); i:=1; s:=1; repeat addor:=1/factorial(i); s:=s+addor; i:=i+1; until (imax_i) or (addormax_i then label2.Caption:=不收敛,迭代次数超过:+edit2.text else label2.Caption:=级数收敛于:+floattostr(s)+ +chr(13)+迭代次数:+floattostr(i);end;procedure TForm1.Button2Click(Sender: TObject);beginclose;end;end.2. 利用公式 编出程序计算 。unit uround;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls,math;type TForm1 = class(TForm) Label1: TLabel; Edit1: TEdit; Button1: TButton; Button2: TButton; Label2: TLabel; Label3: TLabel; Label4: TLabel; Edit2: TEdit; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); end;var Form1: TForm1;implementation$R *.dfmprocedure TForm1.Button1Click(Sender: TObject);var eps,addor,s:double; i,max_i:integer;begin eps:=strtofloat(edit1.Text); max_i:=strtoint(edit2.Text); i:=1; s:=1; addor:=1; repeat addor:=addor*i/(2*i+1); s:=s+addor; i:=i+1; until (imax_i) or (addormax_i then label2.Caption:=计算不收敛,迭代次数超过:+edit2.text else label2.Caption:=Pi的近似值为:+floattostr(2*s)+ +chr(13)+迭代次数:+floattostr(i);end;3. 计算级数,精确到10-6 .要点:取不断增大的n值,计算的值,比较值的变化。procedure TForm1.Button1Click(Sender: TObject); function factorial(n:integer):double; var i:integer; prod:double; begin prod:=1; if n0 then begin for i:=2 to n do prod:=prod*i; factorial:=prod; end else if n=0 then factorial:=1 else showmessage(阶乘参数不能为负数!) end;var eps,addor,s:double; i,max_i:integer;begin eps:=strtofloat(edit1.Text); max_i:=strtoint(edit2.Text); i:=1; s:=0; repeat addor:=power(3,i)/factorial(i); s:=s+addor; i:=i+1; until (imax_i) or (addormax_i then label2.Caption:=不收敛,迭代次数超过:+edit2.text else label2.Caption:=级数收敛于:+floattostr(s)+ +chr(13)+迭代次数:+floattostr(i);end;4. 编写一个判断某数是否为素数的应用程序,程序的设计界面如图所示。程序运行时,在编辑框中输入任意一个正整数,单击【判断】按钮,在另一个编辑框显示该数是否为素数。procedure TForm1.Button1Click(Sender: TObject); function PrimeQ(n:integer):Boolean; var i:integer; Q:Boolean; Begin Q:=True; for i:=1 to (n div 2) do if (n mod i = 0) then Q:=false; PrimeQ:=Q; end;begin if PrimeQ(strtoint(edit1.Text) then edit 2.Text:= edit1.text +是素数 else edit2.Text:= edit1.text +不是素数;end;二、编写相应的Delphi程序,分别实现以下信息处理功能:1. 枚举法求百钱买百鸡问题: 用100元钱买100只鸡,公鸡每只5元,母鸡每只3元,小鸡每3只1元,问该如何买?买法有许多种,请找出其中的一种。procedure TForm1.Button1Click(Sender: TObject);var M, I,J,K:Integer;beginM:=100;for i:=0 to M div 5 dofor j:=0 to M div 3 dofor k:=0 to M*3 do if i*5+j*3+k/3=100 then begin edit1.Text:= Inttostr(i);edit2.Text:= Inttostr(j);edit3.Text:= Inttostr(k);Break; end; end;2 定义一个学生成绩类来统计一次考试的成绩。 要求:(1) 从 records.txt 读入每个学生每门功课成绩。(2) 求出每个学生的总分并输出到文件 mark.txt。(3) 求出每门功课的平均分并输出到文件average.txt 提示: 假设有90名学生, 5门课。 定义数据成员 数组 mark905 表示 90个学生 5 门功课的成绩。对每个要求设计一个公有函数,分别为Input(), Total(), Average()。在主函数中分别调用这三个函数。records.txt 的格式: 陈大 85 79 84 78 90 王二 89 92 73 89 80 张三 65 97 60 58 62 李四 85 86 84 82 83 王五 91 93 89 87 95 .mark.txt 的格式: 姓名 总分average.txt 的格式: 科目编号(15) 平均分program mark;$APPTYPE CONSOLEuses SysUtils;const Frecords = records.txt; Fmark = mark.txt; Faverage = average.txt; Courses=5; Students=90;Type Tname=array 1.Students of string16; Tmarks=array 1.Students,1.Courses of real; Taverage=array 1.Courses of real; Ttotal=array 1.Students of real;Var F1,F2: TextFile; i,j,All:integer; sname:Tname; marks:Tmarks; total:Ttotal; average:Taverage; procedure ReadRecords; begin AssignFile(F1, Frecords); Reset(F1); i:=0; while not eof(F1) do begin i:=i+1; Read(F1, snamei); for j:=1 to Courses do Read(F1, marksi,j); Readln(F1); end; All:=i; CloseFile(F1); end; procedure CalculateStudentTotal; begin AssignFile(F2, Fmark ); Rewrite(F2); for i:=1 to All do begin totali:=0; for j:=1 to Courses do totali:=totali+ marksi,j; Writeln(F2,snamei, ,totali:10:2); end; CloseFile(F2); end; procedure CalculateCourseAverge; begin AssignFile(F2, Faverage); Rewrite(F2); for j:=1 to Courses do begin averagej:=0; for i:=1 to All do averagej:=averagej+ marksi,j; Writeln(F2,课程,j, , averagej/all:10:2); end; CloseFile(F2); end; begin ReadRecords; CalculateStudentTotal; CalculateCourseAverge; end.2. 加密和解密。 有一行电文(从 文件 coded.txt 读入, 不超过1024个字符), 已按下面规律译成了密码: AZ az BY by CX cx . . 即第 1 个字母变成第 26 个字母, 第 2 个字母变成第 25 个字母, 第 i 个字母变成第 (26-i+1) 个字母, 非字母字符时不变。 要求编出程序, 将密码还原成原文,并输出密码和原文到文件 decode.txt 。 文件 code.txt 的格式: R zn z xloovtv hgfwvmg uiln wvkzignvmg lu xlnkfgvi zkkorxzgrlm. 文件 decode.txt 格式: 密文: R zn z xloovtv hgfwvmg uiln wvkzignvmg lu xlnkfgvi zkkorxzgrlm. 原文: I am a college student from department of computer gram decode; $APPTYPE CONSOLE uses SysUtils;const Fcode = code.txt; Fdecode = decode.txt; Var F1,F2: Text
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 供水考试题及答案
- 点考试题及答案
- 抗震考试题及答案
- 中外名曲赏析知到智慧树答案
- 中西美食鉴赏知到智慧树答案
- 验光员模拟试题+答案
- 中西医结合临床科研思维与方法知到智慧树答案
- 多重耐药菌感染防控知识培训考核试卷(附答案)
- 第四章血液循环阶梯测试题(附答案)
- 2025年公务员特定项目担保合同规范文本
- 陈腐垃圾施工方案
- 渤海大学《软件工程》2022-2023学年第一学期期末试卷
- 税务会计岗位招聘笔试题及解答(某大型国企)2024年
- ICD-10疾病编码完整版
- 消防设备设施操作讲解培训讲课文档
- 内分泌科医疗管理制度
- 临床开展十二项细胞因子检测临床意义
- FlowmasterV7中文技术手册
- 房屋承包出租合同
- 石油化学工业的发展历程与前景
- 《滚珠丝杠螺母副》课件
评论
0/150
提交评论