欢迎来到天天文库
浏览记录
ID:48058235
大小:1.60 MB
页数:26页
时间:2020-01-13
《C语言中的一些基本算法与实例.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、1枚举法(穷举法)例1-1公元前5世纪,我国古代数学家张丘建在《算经》一书中提出了“百鸡问题”:鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一。百钱买百鸡,问鸡翁、母、雏各几何?【数学模型】记x,y,z分别表示购买鸡翁、母、雏的数量,则有这是一个不定方程,数学方法求解有较大难度。2【算法设计】显然有,且即:将解集合投影到xoy平面上,将被包含在如下集合中集合A共有21×34=714个元素利用计算机的高速度,对上述714个元素逐个试算,判断是否满足题意,并输出满足题意者。————这就是穷举法、亦称为枚举法。3计算流程4//Hundredchick
2、en.cpp源程序文件名#includeusingnamespacestd;intchicken100();//函数原型用于函数声明intmain(){chicken100();//函数调用return0;}//主函数起调度作用,尽可能地简单5intchicken100(){intcocks,hens,chicks,n=0;for(cocks=0;cocks<=20;cocks++){for(hens=0;hens<=33;hens++){chicks=100–cocks–hens;if(3*100==3*(5*
3、cocks+3*hens)+chicks){cout<<”鸡翁”<4、”<5、同一组数据,后者不要输出;2)加号和等号左右各有一个空格3)9*9+12*12=15*15(在前)9*9+40*40=41*41(在后)9归纳法(递推法)例1-2编程显示以下图形(共n行,n由键盘输入)。****************此类题目分析的要点是:通过分析,找出每行空格、*与行号i、列号j及总行数n的关系。由此归纳出:第i行的空格数n-i个;第i行的“*”数是2i-1个。1010#includeusingnamespacestd;intmain(){intn,i,j;cout<<"n=?"<6、>>n;for(i=1;i<=n;i++){for(j=1;j<=n-i;j++)cout<<'';for(j=1;j<=2*i-1;j++)cout<<'*';cout<7、出描述:一行,Sn的值。样例输入:25样例输出:2469013练习4指数函数要求输入x的值,计算出该函数的结果(结果要求保留到小数点后6位)14分析化成递推公式注意:切勿先计算xn及n!,然后计算它们的商。因为它们均可能是非常大的数,尤其是整数n!可能溢出;再做除法,又可能出现更大的误差。15符号变量的设计与应用例1-3编程实现输入一个整数,判断其是否能被3,5或7整除,并输出以下信息之一能同时被3,5,7整除。能被两个数(要指出哪两个数)整除。能被一个数(要指出哪一个数)整除。不能被3,5,7整除。16#include8、>usingnamespacestd;voidf(intn){if(n%(3*5*7)==0)cout<
4、”<5、同一组数据,后者不要输出;2)加号和等号左右各有一个空格3)9*9+12*12=15*15(在前)9*9+40*40=41*41(在后)9归纳法(递推法)例1-2编程显示以下图形(共n行,n由键盘输入)。****************此类题目分析的要点是:通过分析,找出每行空格、*与行号i、列号j及总行数n的关系。由此归纳出:第i行的空格数n-i个;第i行的“*”数是2i-1个。1010#includeusingnamespacestd;intmain(){intn,i,j;cout<<"n=?"<6、>>n;for(i=1;i<=n;i++){for(j=1;j<=n-i;j++)cout<<'';for(j=1;j<=2*i-1;j++)cout<<'*';cout<7、出描述:一行,Sn的值。样例输入:25样例输出:2469013练习4指数函数要求输入x的值,计算出该函数的结果(结果要求保留到小数点后6位)14分析化成递推公式注意:切勿先计算xn及n!,然后计算它们的商。因为它们均可能是非常大的数,尤其是整数n!可能溢出;再做除法,又可能出现更大的误差。15符号变量的设计与应用例1-3编程实现输入一个整数,判断其是否能被3,5或7整除,并输出以下信息之一能同时被3,5,7整除。能被两个数(要指出哪两个数)整除。能被一个数(要指出哪一个数)整除。不能被3,5,7整除。16#include8、>usingnamespacestd;voidf(intn){if(n%(3*5*7)==0)cout<
5、同一组数据,后者不要输出;2)加号和等号左右各有一个空格3)9*9+12*12=15*15(在前)9*9+40*40=41*41(在后)9归纳法(递推法)例1-2编程显示以下图形(共n行,n由键盘输入)。****************此类题目分析的要点是:通过分析,找出每行空格、*与行号i、列号j及总行数n的关系。由此归纳出:第i行的空格数n-i个;第i行的“*”数是2i-1个。1010#includeusingnamespacestd;intmain(){intn,i,j;cout<<"n=?"<6、>>n;for(i=1;i<=n;i++){for(j=1;j<=n-i;j++)cout<<'';for(j=1;j<=2*i-1;j++)cout<<'*';cout<7、出描述:一行,Sn的值。样例输入:25样例输出:2469013练习4指数函数要求输入x的值,计算出该函数的结果(结果要求保留到小数点后6位)14分析化成递推公式注意:切勿先计算xn及n!,然后计算它们的商。因为它们均可能是非常大的数,尤其是整数n!可能溢出;再做除法,又可能出现更大的误差。15符号变量的设计与应用例1-3编程实现输入一个整数,判断其是否能被3,5或7整除,并输出以下信息之一能同时被3,5,7整除。能被两个数(要指出哪两个数)整除。能被一个数(要指出哪一个数)整除。不能被3,5,7整除。16#include8、>usingnamespacestd;voidf(intn){if(n%(3*5*7)==0)cout<
6、>>n;for(i=1;i<=n;i++){for(j=1;j<=n-i;j++)cout<<'';for(j=1;j<=2*i-1;j++)cout<<'*';cout<7、出描述:一行,Sn的值。样例输入:25样例输出:2469013练习4指数函数要求输入x的值,计算出该函数的结果(结果要求保留到小数点后6位)14分析化成递推公式注意:切勿先计算xn及n!,然后计算它们的商。因为它们均可能是非常大的数,尤其是整数n!可能溢出;再做除法,又可能出现更大的误差。15符号变量的设计与应用例1-3编程实现输入一个整数,判断其是否能被3,5或7整除,并输出以下信息之一能同时被3,5,7整除。能被两个数(要指出哪两个数)整除。能被一个数(要指出哪一个数)整除。不能被3,5,7整除。16#include8、>usingnamespacestd;voidf(intn){if(n%(3*5*7)==0)cout<
7、出描述:一行,Sn的值。样例输入:25样例输出:2469013练习4指数函数要求输入x的值,计算出该函数的结果(结果要求保留到小数点后6位)14分析化成递推公式注意:切勿先计算xn及n!,然后计算它们的商。因为它们均可能是非常大的数,尤其是整数n!可能溢出;再做除法,又可能出现更大的误差。15符号变量的设计与应用例1-3编程实现输入一个整数,判断其是否能被3,5或7整除,并输出以下信息之一能同时被3,5,7整除。能被两个数(要指出哪两个数)整除。能被一个数(要指出哪一个数)整除。不能被3,5,7整除。16#include8、>usingnamespacestd;voidf(intn){if(n%(3*5*7)==0)cout<
8、>usingnamespacestd;voidf(intn){if(n%(3*5*7)==0)cout<
此文档下载收益归作者所有