第六节 数学问题(2)_第1页
第六节 数学问题(2)_第2页
第六节 数学问题(2)_第3页
第六节 数学问题(2)_第4页
第六节 数学问题(2)_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、程序设计初步数学问题,授课教师: 侯晓辉 联系方式: ,何为算法?,算法是一个有穷规则的集合,这些规则确定了解决某类问题的一个运算序列。 算法具有以下基本特征:有穷性,确定性,有效性,有零个或多个输入,有一个或者多个输出。,计算机与数学问题,计算机最初发明时就是用来解决数值计算的问题,因此,解决数学问题是计算机最主要的特长。但用计算机解决数学问题与一般的数学方法是有些不同的。,计算机与数学问题,不同之处:在数学问题中,我们主要讲究的是解题的技巧。而在计算机中,我们主要讲究的是解题的方法。 相同之处:无论在数学中还是计算机中,我们最终的目的是得到题目最终的正确结果。,计算机在数学中的应用:,一、

2、年龄问题 “年龄问题”是小学数学中常见的问题。用小学数学方法解决这个问题时,通常采用的是“画线段图”的方法,而在初中则采用“解方程”的方法解决,现在我们采用计算机编程来解决上述问题。,计算机在数学中的应用:,现在我们采用计算机编程来解决上述问题,又有另外一种不同的方法-“穷举法”。 穷举法:按照事物发展规律,尝试把问题所有可能的答案都列出来,最后找到正确答案的一种方法。,“穷举法”求年龄流程图,否,是,开始,结束,输出a+x,(a+x)+(b+x)=65?,A=6, b=15, x=1,X累加1,For循环求年龄,Dim a, b, x As Integer a = 6:b = 15:x =

3、1 For x = 1 To 100 Step 1 If (a + x) + (b + x) = 65 Then Label1.Caption = a + x Exit For Else Label1.Caption = “此题无解! End If Next X,While循环求年龄,Dim a, b, x, c As Integer a = 6:b = 15:x = 1 While (a + x) + (b + x) 65 x = x + 1 If x 45 Then Label1.Caption = “此题无解! Exit Sub End If Wend Label1.Caption =

4、a + x,求鸡兔同筒问题,Dim x, a As Integer For x = 1 To 30 Step 1 If 2 * X + (30 - X) * 4 = 96 Then Label1.Caption = “鸡有” & X & “只,兔子有 & 30 - X & 只! Exit For End If Next X,计算机在数学中的应用,把316这个数表示为两个数之和,使其中一个数能被13整除,而另一个数能被11整除,求解这两个数。,计算机在数学中的应用,Dim a, b As Integer For a = 13 To 316 Step 1 For b = 11 To 316 - a

5、 Step 1 If a Mod 13 = 0 And b Mod 11 = 0 And a + b = 316 Then Label1.Caption = X的值是: & a & , & Y的值是: & b Exit Sub End If Next Next,课后习题一(流程图),课后习题一(源代码),For I = 1 TO 23 If I * 3 + ( 24 I ) * 4 = 86 THEN Label1.Caption = 三轮摩托车共: & X & 辆!“ END IF NEXT I,课后习题二(流程图),课后习题二 (源代码),FOR I=49 TO 1 STEP -1IF I

6、+5=4*(50-I+5) THENLabel1.Caption = 父: & X & ,儿子: & 50 - XEXIT FOR END IFNEXT IEND,思考题:求“水仙花”数,存在着这样的一种三位数:它的个位,十位,百位上的数字的3次方之和等于这个数的本身。例如:153 13 + 53 + 33,用流程图来表示求水仙数。,求水仙花数的源程序,Dim I As Integer Dim X, y, z As Integer For I = 100 To 999 Step 1 z = Int(I / 100) y = Int(I - z * 100) / 10) X = Int(I -

7、z * 100 - y * 10) If z 3 + y 3 + X 3 = I Then temp = temp & I & , Label1.Caption = temp End If Next a,求PI值,以上是一个求PI近似值的公式,请用流程图表示出来。,求PI值的源程序,Dim Mvalue As Double Mvalue = CDbl(Text1.Text) Dim n As Double Dim temp As Double Dim Sum As Double n = 0 While n Mvalue temp = (-1) n / (1 + 2 * n) Sum = tem

8、p + Sum n = n + 1 Wend Label1.Caption = Sum * 4,求自然数的阶乘算法,Dim P, I as Integer P = 1: I = 2 For I = 2 to 10 Step 1 P =P * I Next I Label1.Caption = 10的阶乘是: & P,随堂练习 第 3题,流程图 程序源码,阶乘流程图,计算1!+2!+3!+4!+5!的值,Dim sum, n, k, Mvalue As Integer If Text1.Text = Then MsgBox 请输入有效数字! Else Mvalue = CInt(Text1.Te

9、xt) k = 1 n = 1 sum = 0,For n = 1 To Mvalue Step 1 k = k * n sum = sum + k Next Label1.Caption = Mvalue & 的阶乘是: & k Label3.Caption = 总和是: & sum End If,随堂练习 第 4题(过程图),随堂练习 第 4题(源码1),Dim a, b, c, d, i As Integer a = 8 b = 5 c = 3 d = 2 i = 0,While (i b And a c And a d Then a = a - 3 b = b + 1 c = c + 1 d = d + 1 i = i + 1,随堂练习 第 4题(源码2),ElseI

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论