版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1/59,2/23,本讲内容 函数的应用 三种循环结构的应用,第八讲 循环及函数,3/23,一、输出字符图案,九九乘法表。要求输出如下内容,共9行 每行第一个乘数不变,第二个乘数从1至9 每个算式占8个字符宽,每行9个算式 乘数、星号、等号各占1个字符宽,共4个字符; 乘积占2个字符宽; 再空2格; 如:3*3= 9 3*4=12 ,4/23,九九乘法表,void Multiply() int i, j;/ 2个乘数,其积为i*j for(i=1; i10; i+) for(j=1; j10; j+) cout i ”*” j ”=”; setw(2) i*j ” ”; cout endl;
2、,主要的执行语句输出语句,5/23,二、字符图案,输出由字符“#”及空格组成如下图案,6/23,二、字符图案,观察与分析 循环输出 ”#” 分成上(9行)、下(10行)两个图案 难点 符号出现的起始列 上半部分起始列从20起 逐行依次递减2 下半部分起始列从2起 逐行依次递增2 每行输出的”#”个数 上半部分逐行依次递增2 下半部分逐行依次递减2,7/23,二、字符图案,void pattern() int i, j; for(i=0; i=0; i-) cout setw(2*(10-i) ; for(j=0; j2*i+1; j+) cout # ; cout endl; ,8/23,课堂
3、实战,P103-(5) 编程求“水仙花数”。水仙花数是指一个三位数,其各位数字的立方和等于该数本身。例如,153是一个水仙花数,因为153=13+53+33。,9/23,#include /5-3.cpp #include using namespace std; int main() int i,j,k,x,y; for(i=1;i10;i+) for(j=0;j10;j+) for(k=0;k10;k+) x=100*i+10*j+k; y=pow(i,3)+pow(j,3)+pow(k,3); if(x=y) coutx=i3+ j3+k3endl; return 0; ,10/23,三
4、、循环、函数综合,题目1:判断n是否为质数。 题目2:求出100以内的所有素数,并统计个数,11/23,#include #include using namespace std; void main() int i,n; coutn; if (n2) exit(0); for(i=2;in;i+) if(n%i=0) break; if (in) coutn不是质数endl; else coutn是质数endl; ,12/23,#include #include using namespace std; void main() int i,j,m,count; count=0; for(i=
5、2;i100;i+) m=sqrt(i); for(j=2;jm+1;j+) if (i%j=0) break; if(jm+1) continue; count+; couti ; coutendl共有count个质数endl; ,13/23,#include #include using namespace std; int Fun(int x,int y) int i,j,m,count=0; for(i=x;i=y;i+) m=sqrt(i); for(j=2;jm+1;j+) if (i%j=0) break; if(jm+1) continue; count+; couti ; r
6、eturn count; void main() int count; count=Fun(2,99); cout共有count个质数endl; ,14/23,题目3:求m和n最大公约数 方法:用辗转相除法求最大公约数,三、循环、函数综合,15/23,#include #include using namespace std; void main() int m,n,r; coutmn; if (!m | !n) exit(0); r=m%n; while(r) m=n; n=r; r=m%n; cout这两个数的最大公约数为:nendl; ,16/23,题目4:百元买百鸡:用一百元钱买一百只
7、鸡。已知公鸡5元/只,母鸡3元/只,小鸡1元/3只。 分析:这是个不定方程三元一次方程组问题(三个变量,两个方程) xyz=100 5x3yz/3=100 设公鸡为x只,母鸡为y只,小鸡为z只。 则0 x 100、 0 y 100、 0 z 100,三、循环、函数综合,17/23,#include using namespace std; void main() int x,y,z; coutt公鸡t母鸡t小鸡endl; for (x=0;x=100;x+) for (y=0;y=100;y+) for (z=0;z=100;z+) if (x+y+z=100 ,18/23,此为“最笨”之法要
8、进行101101101= 1030301次(100多万次)运算。 如何改进? 要点: 确定独立变量个数及取值范围每个独立变量用一层循环实现“穷举”; 确定符合题意的条件表达式条件成立的方案,输出结果。,分析,19/23,题目:雨水淋湿了算术书的一道题,8个数字只能看清3个,第一个数字虽然看不清但可看出不是1。编程求其余数字是什么? *(3)2 = 89 分析:设分别用A、B、C、D、E五个变量表示自左到右五个未知的数字。其中A的取值范围为29,其余取值范围为09。条件表达式即为给定算式。 结果:32864,实战,20/23,题目5:张三、李四、王五三个棋迷,定期去文化宫下棋。张三每五天来一次,李四每六天来一次,王五每九天来一次。问每过多少天他们才能一起在文化宫下棋? 分析:此问题实际上是求最小公倍数的数学问题。设结果为x ,其取值范围为1。因上限为无限大,计数值不能预先确定,故用while循环结构更合适。,三、循环、函数综合,21/23,#include using namespace std; void main() int x=1; while (1) if (x%5=0 ,22/23,题目:求100200之间不能被3整除也不能被7整除的数。 分析:求某区间内符合某一要求的数,可用一个变量“穷举”。所以可用一个独立变量x,取值范围100200。 f
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 给我工艺管道安装的施工方案
- 桥梁防雷设施施工方案及技术措施
- 心内科心律失常电复律应急演练脚本
- 施工总进度计划及进度保证措施
- PET-CT机房防护施工方案及技术措施
- 标识标牌安装施工工艺及施工方法
- 导管室导管室火灾应急演练脚本
- 日常生活知识竞赛题库及答案
- 2026重庆市两江新区实验中学校公开招聘4人备考题库附答案详解【突破训练】
- 2026年洛阳市县区事业单位招聘联考笔试温馨提醒(附42个考点地图)笔试题库(易错题)附答案详解
- 煤矿安全生产标准化管理体系2024版与2026版对比分析报告
- 2025-2026学年第二学期统编版四年级语文期末学业水平检测卷
- 骨科关节置换手术诊疗指南及操作规范(2025版)
- 【Y小区燃气管网的庭院管网的水力计算案例3100字】
- 2026中期展望·宏观篇:上半场的预期差下半场的破局点
- 2025-2026学年人教版地理七年级下册期末考点热点以及答题模板总结
- 2026年辽宁现代服务职业技术学院单招职业技能测试题库及答案详解1套
- 2026年版初中历史八年级下册复习提纲(表格型)
- 中级统计师《统计基础理论及相关知识》真题及解析(2026年)
- 焊工考试题库及焊工证模拟考试(及答案)
- 2025年海口市公共卫生疾控中心单位招聘笔试题目(附答案)
评论
0/150
提交评论