[计算机软件及应用]第三章程序设计基础
第三章 基本程序设计 §3.1 顺序结构程序设计 例3.1、“鸡兔同笼问题”:在一个笼子里养着鸡与兔,但不知其中鸡有多少只,兔有多少只。只知道鸡和兔的总数是a,鸡与兔的总脚数是b,求鸡与兔各有多少只。 思路分析: 首先从题目本身开始,找出解决问题的基本思路。每只鸡有两只脚,每只兔有四只脚。假设有x只鸡和y只兔,则根据已知条件可列出如下方程组: x+y=a 2x+4y=b 对该方程组做进一步的转换可得: ? #includeiostream using namespace std; void main( ) { int a,b,x,y; cout请输入鸡和兔的总数:; cina; cout请输入鸡和兔的总脚数:; cinb; x=(4*a-b)/2; y=(b-2*a)/2; cout鸡的数量为:xendl; cout兔的数量为:yendl; } 一、内置数学函数 函数是执行一项任务的代码块。 getline()函数: getline(I,V) 实际调用时形式: getline(cin,a); 扩号内有两个参数;实际调用时扩号内的参数称为实际参数或实参。 自定义函数:自己决定其任务的函数。 内置函数:库文件中已定义好功能的函数;只要知道该函数包含在哪个库中,可直接调用。 C++内置数学函数的定义都在cmath库文件中,使用内置数学函数时,要加文件包含命令: #includecmath 1、幂函数和平方根函数 幂函数: pow(x,y) y=pow(3,4);y=pow(1.7,2.3); 平方根函数: sqrt(x) y=sqrt(9);y=sqrt(3.3); 例3.2、编程计算 3x7y3+7x4y5+x2y6-7 z= 的值. x5y3+5x3y4+2xy5+3 程序: #include cmath #include iostream using namespace std; void main() { double x,y,z; coutinput x,y:endl; cinxy; z=(3*pow(x,7)*pow(y,3)+7*pow(x,4)\ *pow(y,5)+x*x*pow(y,6)-7)/\ (pow(x,5)*pow(y,3)+2*x*pow(y,5)\ +5*pow(x,3)*pow(y,4)+3); coutz=zendl; } 例3.3、根据三边长求三角形面积 可根据海伦公式可求结果: 假设三角形三边长分别为a、b、c 三角形面积为area,则 海伦公式: area=√s(s-a)(s-b)(s-c) 其中:s=(a+b+c)/2 程序: #include cmath #include iostream using namespace std; void main() { double a, b, c, s, area; cout please input a, b, c =?endl; cin a b c; s = (a+b+c)/2; area = sqrt(s*(s-a)*(s-b)*(s-c)); cout area = area endl; } 2、余弦、正弦和正切函数 余弦函数: cos(x) 正弦函数: sin(x) 正切函数: tan(x) x的单位为弧度 例3.4、编程求z=3sinx-2cosx的值。 程序: #include cmath #include iostream using namespace std; void main() { double x,y,z; const double PI=3.14159; cout输入x和y的值(度):endl; cinxy; x=x*PI/180;y=y*PI/180; z=3*sin(x)-2*cos(y); coutz=zendl; } 3、其它常用数学函数 求绝对值: abs(x) 指数函数(ex) : exp(x) 自然对数(lnx): log(x) 常用对数(log10x): log10(x) 二、产生随机数 产生随机数函数(随机数产生器): rand( ) 其作用为返回一个0到32767之间的正整数
原创力文档

文档评论(0)