循环---累加算法递推算法课件

上传人:痛*** 文档编号:167584564 上传时间:2022-11-03 格式:PPT 页数:23 大小:231KB
收藏 版权申诉 举报 下载
循环---累加算法递推算法课件_第1页
第1页 / 共23页
循环---累加算法递推算法课件_第2页
第2页 / 共23页
循环---累加算法递推算法课件_第3页
第3页 / 共23页
资源描述:

《循环---累加算法递推算法课件》由会员分享,可在线阅读,更多相关《循环---累加算法递推算法课件(23页珍藏版)》请在装配图网上搜索。

1、2022-11-31第五章第五章 循环结构程序设计循环结构程序设计for语句语句for(i=1;i=n;i+)item=?;sum=sum+item;程序段程序段2022-11-32第五章第五章 循环结构程序设计循环结构程序设计for语句语句例例 输入一个正整数输入一个正整数n,求,求 1+2+n。假设。假设n=100for(i=1;i=n;i+)item=?;sum=sum+item;i 2022-11-33第五章第五章 循环结构程序设计循环结构程序设计for语句语句编写求编写求 1+1/2+1/3+1/n的程序的程序for(i=1;i=n;i+)item=?;sum=sum+item;1.

2、0/i 2022-11-34第五章第五章 循环结构程序设计循环结构程序设计for语句语句输入一个正整数输入一个正整数n,求,求 1+1/3+1/5+的前的前n项和项和for(i=1;i=n;i+)item=?;sum=sum+item;1.0/(2*i-1)2022-11-35第五章第五章 循环结构程序设计循环结构程序设计for语句语句例例 求求 1-1/3+1/5-的前的前n项和项和for(i=1;i=n;i+)item=?;sum=sum+item;flag*1.0/(2*i-1)flag=-flag;2022-11-36第五章第五章 循环结构程序设计循环结构程序设计for语句语句例例 求

3、求 12+22+32+n2 的和的和for(i=1;i=n;i+)item=?;sum=sum+item;i*i 2022-11-37第五章第五章 循环结构程序设计循环结构程序设计for语句语句例例 求求 12+32+52 的前的前n项和项和for(i=1;i=n;i+)item=?;sum=sum+item;(2*i-1)*(2*i-1)2022-11-38第五章第五章 循环结构程序设计循环结构程序设计for语句语句例例 求求 1!+2!+3!+的前的前n项和项和for(i=1;i=n;i+)item=?;sum=sum+item;item*i item=1;2022-11-39第五章第五章

4、 循环结构程序设计循环结构程序设计for语句语句例例 求求 a+aa+aaa+的前的前n项和项和for(i=1;i=n;i+)item=?;sum=sum+item;item*10+a item=0;2022-11-310第五章第五章 循环结构程序设计循环结构程序设计for语句语句for(i=1;i=n;i+)item=?;sum=sum+item;a/ba=a+b;b=a-b;有一分数序列,有一分数序列,2/1,3/2,5/3,8/5,13/8,21/13,求出这个数列的前求出这个数列的前20项之和。项之和。a=2;b=1;2022-11-311第五章第五章 循环结构程序设计循环结构程序设计

5、for语句语句例例 输入一个正整数输入一个正整数n,计算,计算n!。n!=1*2*3*4*nfor(i=1;i=n;i+)循环体该怎样表达?循环体该怎样表达?抽取具有共性的算式:抽取具有共性的算式:product=product*ifor(i=1;i=n;i+)product=product*i;从从1连续乘到连续乘到n,起点是,起点是1,终点是,终点是n,步长是,步长是1。假设循环控制变量设为假设循环控制变量设为i,则,则for语句可写为:语句可写为:2022-11-312第五章第五章 循环结构程序设计循环结构程序设计for语句语句连续累加的算式:连续累加的算式:sum=sum+i;或;或s

6、um=sum+item;要求和变量要求和变量sum的初始值为的初始值为0初始值初始值product=?连续乘积的算式:连续乘积的算式:product=product*i;或;或 product=product*itemsum=0;for(i=1;i=n;i+)sum=sum+i;sum=0;for(i=1;i=n;i+)sum=sum+item;product=1;for(i=1;i=n;i+)product=product*i;product=1;for(i=1;i=n;i+)product=product*item;2022-11-313第五章第五章 循环结构程序设计循环结构程序设计for

7、语句语句#include int main()return 0;int i,n;double product;printf(input n:n);scanf(%d,&n);product=1;/*置阶乘置阶乘product的初值为的初值为1*/for(i=1;i=n;i+)/*循环重复循环重复n次,计算次,计算n!*/product=product*i;printf(product=%.0fn,product);2022-11-314第五章第五章 循环结构程序设计循环结构程序设计#include int main()int i,n;int product;printf(input n:n);s

8、canf(%d,&n);product=1;for(i=1;i=n;i+)product=product*i;printf(product=%dn,product);return 0;input n:2product=2input n:5product=120input n:20product=-21021327362022-11-315第五章第五章 循环结构程序设计循环结构程序设计#include int main()int i,n;int product;printf(input n:n);scanf(%d,&n);product=1;for(i=1;i=n;i+)product=prod

9、uct*i;printf(product=%dn,product);return 0;input n:16product=1product=2product=6product=24product=120product=720product=5040product=40320product=362880product=3628800product=39916800product=479001600product=1932053504product=1278945280product=2004310016product=2004189184Press any key to continueinpu

10、t n:17product=1product=2product=6product=24product=120product=720product=5040product=40320product=362880product=3628800product=39916800product=479001600product=1932053504product=1278945280product=2004310016product=2004189184product=-288522240Press any key to continue2022-11-316第五章第五章 循环结构程序设计循环结构程序设

11、计for语句语句计算计算xn=x*x*x进一步,如果求进一步,如果求 x xn n ,如何编写程序?,如何编写程序?输入实数输入实数x x和正整数和正整数n n,循环从循环从1到到n,步长为,步长为1,for(i=1;i=n;i+)循环体:循环体:power=power*item(第第i项项)power 初始值应为初始值应为1,power=1;item=?item=x;2022-11-317第五章第五章 循环结构程序设计循环结构程序设计for语句语句#include int main()return 0;源程序求源程序求 x xn n int i,n;double x,power;printf

12、(Enter x,n:n);scanf(%lf%d,&x,&n);power=1;/*置置power的初值为的初值为1*/for(i=1;i=n;i+)/*循环重复循环重复n次,计算次,计算x的的n次幂次幂*/power=power*x;printf(%.0fn,power);2022-11-318第五章第五章 循环结构程序设计循环结构程序设计for语句语句例例 欧几里德算法:求两个非负整数欧几里德算法:求两个非负整数u和和v的最大公约数。的最大公约数。例如,求例如,求36和和8的最大公约数。的最大公约数。u=36,v=80,r=u%v=36%8=4,u=v=8,v=r=4 0;r=u%v=8

13、%4=0,u=v=4,v=r=0;u=4的值即为的值即为所求的解。所求的解。求两个非负整数的最大公约数可以利用辗转相除法,求两个非负整数的最大公约数可以利用辗转相除法,过程如下:过程如下:当当v不为不为0 时,辗转用操作时,辗转用操作r=u%v,u=v,v=r消去消去相同的因子,直到相同的因子,直到v=0时,时,u的值即为所求的解。的值即为所求的解。2022-11-319第五章第五章 循环结构程序设计循环结构程序设计for语句语句输入输入u和和vV!=0yr=u%vu=vv=rn输出输出uinclude int main()int u,v,r;printf(“请输入请输入u,v:”);scan

14、f(“%d%d”,&u,&v);while(v!=0)r=u%v;u=v;v=r;printf(“%dn”,u);return 0;循环次数不确定循环次数不确定2022-11-320第五章第五章 循环结构程序设计循环结构程序设计for语句语句举例举例请编写一个程序,其功能为:从键盘输入一行字符,请编写一个程序,其功能为:从键盘输入一行字符,统计其中包含的数字字符个数,并输出。统计其中包含的数字字符个数,并输出。问题分析:问题分析:(1)从键盘输入一行)从键盘输入一行字符,字符,字符的个数不定字符的个数不定,需要根据行结束标需要根据行结束标记记n(回车符)判(回车符)判断输入的结束。断输入的结束

15、。(2)只需统计字符个)只需统计字符个数,没有必要保存每个数,没有必要保存每个字符。字符。(3)需要定义一个整)需要定义一个整型变量型变量num,用于累,用于累加数字字符的个数。加数字字符的个数。定义变量定义变量num,并置初值,并置初值0读入一个字符读入一个字符数字字符?数字字符?ynnum加加1不是回车符不是回车符yn输出输出num2022-11-321第五章第五章 循环结构程序设计循环结构程序设计for语句语句程序程序#include int main()char ch;int num=0;printf(“请输入一行文本:请输入一行文本:”);do ch=getchar();if(ch=

16、0&ch=9)num+;while(ch!=n);printf(“num=%dn”,num);return 0;初值从键盘得到初值从键盘得到ch循环控制变量是循环控制变量是终值是终值是n变化从键盘得到变化从键盘得到num是累加和,是累加和,满足条件就累满足条件就累加加2022-11-322第五章第五章 循环结构程序设计循环结构程序设计for语句语句有一分数序列,有一分数序列,2/1,3/2,5/3,8/5,13/8,21/13,求出这,求出这个数列的前个数列的前20项之和。项之和。分析:分析:第第1项:项:2/1第第2项:项:3/2第第3项:项:5/3第第4项:项:8/5第第5项:项:13/8

17、设计:设计:和变量:和变量:sum=0分子变量:分子变量:a=2分母变量:分母变量:b=1中间变量:中间变量:c循环控制:循环控制:i=1,i=20,i+循环体:循环体:sum=sum+a/b c=a a=a+b b=c分析:分析:a/b(a+b)/a前前20项之和,表示循环次项之和,表示循环次数已知,是累加和算法数已知,是累加和算法循环体内准备下一次的循环体内准备下一次的item,它是上一次值的递推它是上一次值的递推循环结构程序设计的典型算循环结构程序设计的典型算法之一法之一-递推算法递推算法2022-11-323第五章第五章 循环结构程序设计循环结构程序设计本章作业本章作业单项选择题、程序分析题、程序填空单项选择题、程序分析题、程序填空题写书上题写书上

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!