1 / 12
文档名称:

C++多重循环PPT课件.ppt

格式:ppt   大小:247KB   页数:12页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

C++多重循环PPT课件.ppt

上传人:非学无以广才 2025/5/17 文件大小:247 KB

下载得到文件列表

C++多重循环PPT课件.ppt

相关文档

文档介绍

文档介绍:该【C++多重循环PPT课件 】是由【非学无以广才】上传分享,文档一共【12】页,该文档可以免费在线阅读,需要了解更多关于【C++多重循环PPT课件 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。多重循环
第6课
1
例1:求三位数中的水仙花数。(若abc是水仙花数,则有abc=a3+b3+c3)
例如:153= 13+53+33
分析:采用穷举法,从100-999中搜索, 将每个数的三个数字分解出来, 再计算立方和,最终与原数比较,假如相等,则是符合条件的三位数.
for (m=100;m<=999;m++)
{ a=m/ 100;
b=m % 100 / 10;
c=m % 10;
if (a*a*a+b*b*b+c*c*c==m) cout<< m;
}
2
水仙花数,也可以采用此外一种措施:
对三位数的三个数字进行穷举.
百位数字:1—9
十位数字:0---9
个位数字:0---9
for (a=1;a<=9;a++)
for (b )
for (c )
if (a*a*a+b*b*b+c*c*c= =a*100+b*10+c) cout<<a<<b<<c;
这是一种三重循环,外层循环做一次,内层循环必须所有做完,详细如下:
c=0 (100)
c=1 (101)
b=0 ……
b=1 c=9 (109)
b=2
a=1 b=3
……
b=9
a=2
3
例2:用5元钱买100只纽扣,其中金属纽扣每只5角,有机玻璃纽扣每只1角,小钮扣1分钱3个,编程求出种纽扣各买了多少只?
措施一:for (x=1;x<=100;x++)
for (y=1;y<=100;y++)
for (z=1;z<=100;z++)
if (x+y+z==100 && 50*x+10*y+z/==500) cout<<x<<y<<z;
运算次数:
100*100*100=100万
措施二:for (x=1;x<=10;x++)
for (y=1;y<=50;y++)
{ z=100-x-y;
if (50*x+10*y+z/==500) cout<<x<<y<<z;
}
运算次数:
10*50=500
4
例3:判断素数:素数又叫质数,是指除了1与自身以外没有此外约数的数,其中1既不是素数不是合数,2是自然数中最小的质数。程序规定,输入一种数n,判断n 是不是质数,假如是输出”yes”,假如不是,输出“no”。
cin>>n; k=0;
if (n==1) cout<“no”;
else
{
for (i=2;i<=n-1;i++)
if (n%i= =0) k=1;
if (k==0) cout<<“yes”;
else cout<<“no”;
}
K是标识
范围可优化至int(sqrt(n))
找到一种约数,可以中断目前循环
根据标识的值,从而进行判断
请你根据优化后的方案改写出程序
5
P1119: 求1—N中的素数的个数.(1<=N<=10000)
思绪:s=0; cin>>n;
for(i=2;i<=n;i++)
{
判断i是不是素数,假如是 s=s+1;
}
cout<<s<<endl;
6
P1118、求1—N中的完全数,所谓完全数是指因子和恰好等于自身的数。如28=1+2+4+7+14,故28就是一种完全数。 告诉你的是此范围内的完全数不也许是完全平方数。
输入:N
输出:1-N中的完全数,一行一种数。
数据范围:1<=N<=10000
思绪:
   for (i=1;i<=n;i++)
{ 求 i 的因子和,用S寄存;
    if (s==i) cout<<i<<endl;
}
S=0;
for (j=1;j<=i/2;j++)
if (i% j==0) s=s+j;
上述做法的运算次数是:N*N 称为时间复杂度
1秒的运算次数=2^25==*10^7(8位数)二重循环10000*10000,因此上面的的算法只能到10000
7
[例3] 编写程序,在屏幕上显示下图形的n行,每行的个数是m,m、n均由键盘输入(m<20,n<30),如:n=4, m=6 时输出如下的图形,第一行前面没有空格。
******
******
******
******
分析:若不考虑图形的错位关系,而直接打印一种矩形的图形,为n行,每行M个,那么n行可用计数循环实现(大循环),每行的个数也可以用计数循环实现(小循环):
 
cin>>n>>m; 
for (i=1;i<=n;i++)
{

for ( j=1;j<=m;j++)
cout<<“*”;
cout<<endl; {每行结束时换行};
}
k=0;用来控制空格的个数
for (j=1;j<=k;j++)
cout<<“ “;
//输出K个空格
K=k+1;
8
[例4] 输出如下的n行(n<20)图形,n由键盘输入。
如:n=6时,输出如下的图形,第一行前没有空格
########### {11个}
######### {9个}
####### {7个}
##### {5个}
### {3个}
# {1个}
分析:用二重循环处理:大循环控制行数,小循环控制每行的个数.
第i行与个数的关系式:
个数=2*i-1
6行
5行
4行
3行
2行
1行
11=6*2-1
9=5*2-1
7=4*2-1
……
1=1*2-1
cin>>n;
for (i=n;i>=1; i--)
{
  for (j=1;j<=2*i-1;j++)
cout<<“#”;
cout<<endl;
}
{怎样控制位置}
9
P1123:
1
121
12321
1234321
123454321
**********
1234567654321
123456787654321
12345678987654321
cin>>n;
for ( i=1;i<=n;i++)
{ 控制空格的个数;
前二分之一;
后二分之一;
cout<<endl;
}
分析:采用二重循环,大循环产生N行,小循环产生每一行.
for (j=1;j<=I;j++) cout<<j;
for (j=i-1;j>=1;j--) cout<< j;
10

最近更新

2024年海南经贸职业技术学院单招职业适应性考.. 55页

2024年湖北省十堰市单招职业适应性测试必刷测.. 57页

2024年湖南工艺美术职业学院单招职业技能测试.. 53页

2024年潍坊工程职业学院单招职业技能考试必刷.. 55页

2024年福州外语外贸学院单招职业倾向性考试必.. 58页

2025品牌升级背景下客户服务案例总结汇报幻灯.. 24页

2025年制造业智能生产流程深蓝极简工艺报告PP.. 22页

2025年工业机器人伺服电机过热保护算法优化测.. 26页

桡骨远端骨折的护理查房专家讲座 29页

GSM收发信基站BTS安装及调测流程 13页

库房场地短期租赁合同书2025年通用 15页

微生物培养和药敏解读培训 51页

2025年晋中职业技术学院单招职业倾向性测试必.. 44页

2025年桂林生命与健康职业技术学院单招职业倾.. 43页

2025年江苏城乡建设职业学院单招职业技能测试.. 44页

2025年江西应用科技学院单招职业技能测试题库.. 44页

2025年河北交通职业技术学院单招职业倾向性测.. 43页

2025年河南工业职业技术学院单招职业适应性测.. 44页

2025年浙江省湖州市单招职业适应性测试题库附.. 45页

2025年渤海船舶职业学院单招职业技能测试题库.. 44页

2025年湖南吉利汽车职业技术学院单招职业技能.. 44页

2025年湖南高尔夫旅游职业学院单招职业倾向性.. 46页

2025年甘肃能源化工职业学院单招综合素质考试.. 45页

2025年石家庄职业技术学院单招职业适应性测试.. 43页

2025年福建生物工程职业技术学院单招职业倾向.. 44页

ASIMO机器人PPT课件 43页

社区分管计生青少年文体工作个人总结与社区创.. 10页

ABB机器人基础培训PPT课件 54页

社区幼儿教育状况调研报告-调研报告与秋季学期.. 11页

2025年辽宁铁道职业技术学院单招职业技能测试.. 45页