#include <iostream>
using namespace std;
int main()
{
int z = 0;
for(int i = 1, n=9; n > 0; n--,i=(i+1)*2,z=i) {
}
cout << z << endl;
for(int i = 1, n=10; n > 0; n--,i=(i+1)*2) {
z=i;
}
cout << z << endl;
return 0;
}
2651cpp-examples-monkey-eating-peach
使用递归算法,方便又直观:
#include <iostream>
using namespace std;
int num(int n)
{
int i;
if(n==1) i=1;
else i=2*(num(n-1)+1);
return i;
}
int main()
{
cout<<"桃子一共有:"<<num(10)<<"个"<<endl;
return 0;
}
#include <iostream>
#include <typeinfo>
#include <iomanip>
using namespace std;
int main()
{
int a,b;
int MAX,MIN,i;
cout <<"输入两个数: ";
cin >> a >> b;
cout<<"检查输入数据类型"<<typeid(a).name()<<setw(6)<<typeid(b).name()<<endl;
//建议输入数据非法时,做异常抛出 throw
// 找到两个数中,最大的
MAX=a?b:a,b;
// 确定除数,被除数
if(a==MAX)
MIN=b;
else
MIN=a;
// 求最大公约数,
for(i=MIN;i>1;i--)
{
if((MAX%i==0)&&(MIN%i==0))
break;
else
continue;
}
cout<<"最大公约数"<<i<<endl;
cout<<"最小公倍数"<<(a*b)/i;
return 0;
}
2649cpp-examples-pyramid-pattern
以下图形另一种写法:
*
* * *
* * * * *
* * * * * * *
* * * * * * * * *
#include <iostream>
using namespace std;
int main()
{
int space, rows = 5;
for(int i = 1; i <= rows; ++i)
{
for(space = 1; space <= rows-i; ++space)
{
cout <<" ";
}
int k = 2*(i-1)+1;
while(k>0)
{
cout << "* ";
--k;
}
cout << endl;
}
return 0;
}
2648cpp-examples-largest-number-among-three
参考方法:
#include <iostream>
using namespace std;
int main(int argc, char *argv[]) {
float a,b,c,MAX;
cout << "请输入三个数, 用空格隔开" << endl;
cin >> a >> b >> c;
MAX = a > b ? a : b;
MAX = MAX > c ? MAX : c;
cout <<"最大数是 " << MAX;
return 0;
}
2652cpp-examples-monkey-eating-peach
注意 for 循环的次数:
2651cpp-examples-monkey-eating-peach
使用递归算法,方便又直观:
2650cpp-examples-hcf-gcd
当输入两个数相等时,最大公约数还是其本身,等于说不受输入数值影响。找公约数的前提是,输入为整型,等于说受输入类型影响。
最大公约数计算:两数能同时被 i 整除。
最小公倍数计算:两数相乘 / 最大公约数。
2649cpp-examples-pyramid-pattern
以下图形另一种写法:
2648cpp-examples-largest-number-among-three
参考方法: