用c语言编写秦九韶算法程序,求用秦九韶算法求多项式的程序高二数学里有用秦九韶算法求n次多项式,请问它写成程序是什么?用basic或c语言都可以,尤其是一开始将n个系数输入的那块,...

本文主要是介绍用c语言编写秦九韶算法程序,求用秦九韶算法求多项式的程序高二数学里有用秦九韶算法求n次多项式,请问它写成程序是什么?用basic或c语言都可以,尤其是一开始将n个系数输入的那块,...,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

7d14a2b81882cfe4494b096a84150b2a.png 优质解答

秦九韶算法

1.教学任务分析

(1)在学习中国古代数学中的算法案例的同(2)时,进一步体会算法的特点.(3)体会中国古代数学对世界数学发展的贡献.

2. 重点与难点重点:理解秦九韶算法的思想.难点:用循环结构表示算法步骤.

3.教学情境设计 (1) 设计求多项式f(x)=2x5-5x4-4x3+3x2-6x+7当x=5时的值的算法,并写出程序.

学生提出一般的解决方案,如:

x=5 f=2 * x^5 – 5 * x^4 – 4 * x^3 + 3 * x^2 – 6 * x + 7

PRINT“f=”;fEND

教师点评:上述算法一共做了解15次乘法运算,5次加法运算,优点是简单,易懂.缺点是不通用,不能解决任意多项式的求值问题,而且计算效率不高.

(2)有没有更高效的算法?

师:计算x的幂时,可以利用前面的计算结果,以减少计算量,即先计算x2,然后依次计算x2.x,(x2.x).x,((x2.x).x).x的值,这样计算上述多项式的值,一共需要多少次乘法,多少次加法?

第二种做法与第一种做法相比,乘法的运算次数减少了,因而能提高运算效率,而且对于计算机来说,做一次乘法所需的运算时间比做一次加法要长得多,因此第二种做法更快地得到结果.

(3)能否探索更好的算法,解决任意多项式的求值问题?

教师引导学生把多项式变形为:f(x)= 2x5-5x4-4x3+3x2-6x+7

=((((2x-5)x-4)x+3)x-6)x+7

并提问:从内到外,如果把每一个括号都看成一个常数,那么变形后的式子中有哪些“一次式”?x的系数依次是什么?

(4)若将x的值代入变形后的式子中,那么求值的计算过程是怎样的?

师:计算的过程可以列表表示为:

多项式x系数

2

-5

-4

3

-6

7

运算

10

25

105

540

2670

+

变形后x的"系数"

2

5

21

108

534

2677

*5

最后的系数2677即为所求的值,让学生描述上述计算过程

师:指出这种算法就是“秦九韶算法”,同时介绍秦九韶的生平.

(5)用秦九韶算法求多项式的值,与多项式的组成有直接关系吗?用秦九韶算法计算上述多项式的值,需要多少次乘法运算和多少次加法运算?教师引导学生发现在求值的过程中,计算只与多项式的系数有关,让学生统计所进行的乘法和加法运算的次数.(6) 秦九韶算法适用一般的多项式f(x)=anxn+an-1xn-1+….+a1x+a0的求值问题吗?

师:怎样用秦九韶算法求一般多项式f(x)= anxn+an-1xn-1+….+a1x+a0当x=x0时的值?

教师引导学生思考,把n次多项式的求值问题转化成求n个一次多项式的值的问题,即求v1=anx+an-1

v2=v1x+an-2 v3=v2x+an-3 ……..vn=vn-1x+a0

的值的过程,共做了多少次乘法运算,多少次加法运算?

(7)怎样用程序框图表示秦九韶算法

观察秦九韶算法的数学模型,计算vk时要用到vk-1的值,若令v0=an,我们可以得到下面的递推公式:

v0=an vk=vk-1+an-k(k=1,2,…n)

这是一个在秦九韶算法中反复执行的步骤,可以用循环结构来实现.

(8)小结:通过对秦九韶算法的学习,你对算法本身有哪些进一步的认识?

教师引导学生思考、讨论、概括,小结时要关注如下几点:(1)算法具有通用的特点,可以解决一类问题;(2)解决同一类问题,可以有不同的算法,但计算的效率是不同的,应该选择高效的算法;(3)算法的种类虽多,但三种逻辑结构可以有效地表达各种算法;等等.

(9)课后作业:习题1.3A组第2题.

这篇关于用c语言编写秦九韶算法程序,求用秦九韶算法求多项式的程序高二数学里有用秦九韶算法求n次多项式,请问它写成程序是什么?用basic或c语言都可以,尤其是一开始将n个系数输入的那块,...的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/156613

相关文章

Go语言中泄漏缓冲区的问题解决

《Go语言中泄漏缓冲区的问题解决》缓冲区是一种常见的数据结构,常被用于在不同的并发单元之间传递数据,然而,若缓冲区使用不当,就可能引发泄漏缓冲区问题,本文就来介绍一下问题的解决,感兴趣的可以了解一下... 目录引言泄漏缓冲区的基本概念代码示例:泄漏缓冲区的产生项目场景:Web 服务器中的请求缓冲场景描述代码

Go语言如何判断两张图片的相似度

《Go语言如何判断两张图片的相似度》这篇文章主要为大家详细介绍了Go语言如何中实现判断两张图片的相似度的两种方法,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 在介绍技术细节前,我们先来看看图片对比在哪些场景下可以用得到:图片去重:自动删除重复图片,为存储空间"瘦身"。想象你是一个

Go语言中Recover机制的使用

《Go语言中Recover机制的使用》Go语言的recover机制通过defer函数捕获panic,实现异常恢复与程序稳定性,具有一定的参考价值,感兴趣的可以了解一下... 目录引言Recover 的基本概念基本代码示例简单的 Recover 示例嵌套函数中的 Recover项目场景中的应用Web 服务器中

python编写朋克风格的天气查询程序

《python编写朋克风格的天气查询程序》这篇文章主要为大家详细介绍了一个基于Python的桌面应用程序,使用了tkinter库来创建图形用户界面并通过requests库调用Open-MeteoAPI... 目录工具介绍工具使用说明python脚本内容如何运行脚本工具介绍这个天气查询工具是一个基于 Pyt

Ubuntu设置程序开机自启动的操作步骤

《Ubuntu设置程序开机自启动的操作步骤》在部署程序到边缘端时,我们总希望可以通电即启动我们写好的程序,本篇博客用以记录如何在ubuntu开机执行某条命令或者某个可执行程序,需要的朋友可以参考下... 目录1、概述2、图形界面设置3、设置为Systemd服务1、概述测试环境:Ubuntu22.04 带图

MyBatis编写嵌套子查询的动态SQL实践详解

《MyBatis编写嵌套子查询的动态SQL实践详解》在Java生态中,MyBatis作为一款优秀的ORM框架,广泛应用于数据库操作,本文将深入探讨如何在MyBatis中编写嵌套子查询的动态SQL,并结... 目录一、Myhttp://www.chinasem.cnBATis动态SQL的核心优势1. 灵活性与可

Python程序打包exe,单文件和多文件方式

《Python程序打包exe,单文件和多文件方式》:本文主要介绍Python程序打包exe,单文件和多文件方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录python 脚本打成exe文件安装Pyinstaller准备一个ico图标打包方式一(适用于文件较少的程

Mybatis嵌套子查询动态SQL编写实践

《Mybatis嵌套子查询动态SQL编写实践》:本文主要介绍Mybatis嵌套子查询动态SQL编写方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录前言一、实体类1、主类2、子类二、Mapper三、XML四、详解总结前言MyBATis的xml文件编写动态SQL

Python程序的文件头部声明小结

《Python程序的文件头部声明小结》在Python文件的顶部声明编码通常是必须的,尤其是在处理非ASCII字符时,下面就来介绍一下两种头部文件声明,具有一定的参考价值,感兴趣的可以了解一下... 目录一、# coding=utf-8二、#!/usr/bin/env python三、运行Python程序四、

Python使用pynput模拟实现键盘自动输入工具

《Python使用pynput模拟实现键盘自动输入工具》在日常办公和软件开发中,我们经常需要处理大量重复的文本输入工作,所以本文就来和大家介绍一款使用Python的PyQt5库结合pynput键盘控制... 目录概述:当自动化遇上可视化功能全景图核心功能矩阵技术栈深度效果展示使用教程四步操作指南核心代码解析