150 likes | 303 Views
多项式的求值问题. 计算当 x=5 时多项式:. 计算当 x=5 时多项式:. 的值。. Rem 多项式的求值问题 Private Sub Form_Activate() End Sub. x = 5 ‘ 给变量 x 赋值. y = 2 * x ^ 4 - 6 * x ^ 3 - 5 * x ^ 2 + 4 * x - 6 ‘ 求多项式的值. Print y. 计算当 x=5 时多项式:. 的值。. 容易看出原式可以写成:.
E N D
计算当 x=5 时多项式: 计算当 x=5 时多项式: 的值。 Rem 多项式的求值问题 Private Sub Form_Activate() End Sub x = 5 ‘ 给变量x赋值 y = 2 * x ^ 4 - 6 * x ^ 3 - 5 * x ^ 2 + 4 * x - 6 ‘ 求多项式的值 Print y
计算当 x=5 时多项式: 的值。 容易看出原式可以写成: 多项式的求值问题
Rem 多项式的求值问题 Private Sub Form_Activate() End Sub x = 5 ‘ 给变量x赋值 y = (((2 * x - 6) * x - 5) * x + 4) * x - 6 '求多项式的值 y = 2 * x ^ 4 - 6 * x ^ 3 - 5 * x ^ 2 + 4 * x - 6 ‘ 求多项式的值 Print y
计算当 x=5 时多项式: 的值。 x=5 4 15 79 389 容易看出原式可以写成: 数学中的综合除法 2 -6 -5 4 -6 10 20 75 395 2
为多项式准备数据 完成多项式 的求值过程 用粗框图表达综合除法的求值过程 输出多项式的值
开始 系数按降幂排列 给出X的值 取出第一个系数 还有系数吗? NO YES 乘以X的值 输出计算结果 结束 用流程图表达综合除法的计算过程 加上下一个系数
B C A 顺序结构 A B C A、B、C 分别为基本结构程序段
条件 Yes No 条件? A B 选择结构 真 假 A B 流程图 N—S 框图
循环条件 条件? No Yes A 循环结构 循环体A
还有系数吗? N-S框图 为多项式准备数据 系数按降幂排列 给出X的值 取出第一个系数 完成多项式的求值过程 乘以X的值 加上下一个系数 输出多项式的值 输出计算结果
Private Sub Form_Activate() End Sub n = 4: x = 5 a = Array(-6, 4, -5, -6, 2) y = a(n) For i = n - 1 To 0 Step -1 y = y * x + a(i) Next i Print " y="; y 顺序结构 顺 序 结 构 循环结构
从特殊到一般 将以上程序修改成N次多项式的求值程序。 要求: (1)多项式的次数由键盘输入; (2)X的取值由键盘输入; (3)由键盘输入多项式的系数; (4)显示多项式的表达式;
Private Sub Command4_Click() '显示多项式 n = Val(Text1.Text) x = Val(Text2.Text) Label4.Caption = "" Label3.Caption = "": d(n) = "" For i = n - 1 To 1 Step -1 d(n) = d(n) + "(" ‘ 处理左括号 Next i If Abs(a(n)) = 1 Then d(n) = d(n) + Left(CStr(a(n)), 1) + "x" Else ‘ 处理高次项系数为1的情况 d(n) = d(n) + CStr(a(n)) + "x" End If For i = n - 1 To 1 Step -1 If a(i) > 0 Then ‘ 处理系数输出符号 d(i) = "+" + CStr(a(i)) + ")x" Else d(i) = CStr(a(i)) + ")x" End If Next i If a(i) >= 0 Then d(i) = "+" + CStr(a(i)) Else d(i) = CStr(a(i)) For i = n To 0 Step -1 Label3.Caption = Label3.Caption + d(i) Next i ‘ 输出字符串 End Sub 顺序结构 顺 序 结 构 循环结构 选择结构 循环结构 选择结构 循环结构
小结 1、通过学习进一步认识程序设计和中 学数学之间的关系,即数学知识是 程序设计算法的基础。 2、通过多项式求值的例题使我们对综 合除法有了一定的认识。 3、了解框图在程序设计中的作用。 4、知道程序的概念,了解程序设计的 过程和需要学习的知识。