#includeiostream> using namespace std int maino double a, b double arctan( double x);/函数原型声明 a=16.0* arctan(1/5.0); b=4.0* arctan(1/239.0); //注意:因为整数相除结果取整, //如果参数写1/5,1/239,结果就都是0 cout pi="<<a-b<endl
#include<iostream> using namespace std; int main() { double a,b; double arctan(double x);//函数原型声明 a=16.0*arctan(1/5.0); b=4.0*arctan(1/239.0); //注意:因为整数相除结果取整, //如果参数写1/5,1/239,结果就都是0 cout<<"PI="<<a-b<<endl; } 11
double arctan(double x i int i double r,e, f, sgr sar=Xxx, r=0;e=x;i=1; while(e/i>le-15) f=e/i;//表达式中每一项 r=(i%4=1)?r+f:r-f;/r是计算结果 e=e米sqr;i+=2; 运行结果: return r PI=3.14159
double arctan(double x) { int i; double r,e,f,sqr; sqr=x*x; r=0; e=x; i=1; while(e/i>1e-15) { f=e/i;//表达式中每一项 r=(i%4==1)? r+f : r-f;//r是计算结果 e=e*sqr; i+=2; } return r; } 运行结果: PI=3.14159 12
C++语言程序设计 湖南科技大学 国例3-4 数的声明与使用 的。寻找并输出1199之间的数m,它满足m、 m2和m3均为回文数。 回文:各位数字左右对称的整数 例如:11满足上述条件 112=121,113=1331 使。分析 10取余的方法,从最低位开始,依次取出该数 的各位数字。按反序重新构成新的数,比较与 原数是否相等,若相等,则原数为回文
C++语言程序设计 湖南科技大学 13 例3-4 ⚫ 寻找并输出11~999之间的数m,它满足m、 m 2和m 3均为回文数。 –回文:各位数字左右对称的整数。 例如:11满足上述条件 112=121,113=1331。 ⚫ 分析: –10取余的方法,从最低位开始,依次取出该数 的各位数字。按反序重新构成新的数,比较与 原数是否相等,若相等,则原数为回文。 函 数 的 声 明 与 使 用
#include < iostream> using name space std int maino bool symm (long n) long m for(m=11;m<1000;m++) if (symm(m)&&symm(mkm)&&symm(m*m*m)) cout<<"m="<<m〈<m*m=”<<m*m << m*km="<<mkmkm<endl
#include <iostream> using namespace std; int main() { bool symm(long n); long m; for(m=11; m<1000; m++) if (symm(m)&&symm(m*m)&&symm(m*m*m)) cout<<"m="<<m<<" m*m="<<m*m <<" m*m*m="<<m*m*m<<endl; } 14
bool symm(long n) long i, m; in;m=0;//m表示翻转后的数 while(i) m=m*10+1%10;//1%10表示i的个位数 i=i/10 return(m=n) //该程序最好单步跟踪调试
bool symm(long n) { long i, m; i=n ; m=0 ;//m表示翻转后的数 while(i) { m=m*10+i%10;//i%10 表示i的个位数 i=i/10 ; } return( m==n ); } //该程序最好单步跟踪调试 15