/*****百钱百鸡的问题*****/
#include<iostream>
using namespace std;
int main()
{
int x,y,z,i=0;
for(x=0;x<20;x++)
for(y=0;y<34;y++)
for(z=0;z<100;z+=3)
{
if(5*x+3*y+z/3==100&&x+y+z==100)
{
i++;
cout<<"第"<<i<<"种方案:"<<endl;
cout<<"鸡翁的只数为:"<<x<<endl;
cout<<"鸡母的只数为:"<<y<<endl;
cout<<"鸡雏的只数为:"<<z<<endl;
}
}
return 0;
}
/***************************************************
**计算一个整数的位数,输出各位数,计算各位数的总和**
***************************************************/
#include<iostream>
using namespace std;
int main()
{
long int a,i;
int k=0,h,m=0;
cout<<"输入一个整型数:";
cin>>a;
for(i=10;i<=100000000;i=i*10)
{
k++;
if(a<i)
break;
}
cout<<"位数:";
cout<<k<<endl;
cout<<"输出各位数值:";
while(i>1)
{
i=i/10;
h=a/i;
a=a%i;
m+=h;
cout<<h<<' ';
}
cout<<endl;
cout<<"各个位的数值和:"<<m<<endl;
return 0;
}
/*******************************************
**输入任一个点平面坐标,求该点建筑物的高度**
*******************************************/
#include<iostream>
#include<math.h>
using namespace std;
float juli(float x1,float y1,float x2,float y2);
int main()
{
float x,y,k;
cout<<"请输入坐标(x,y):"<<endl;
cout<<"x=";
cin>>x;
cout<<"y=";
cin>>y;
cout<<"您所输入的坐标为("<<x<<","<<y<<")"<<endl;
x= fabs( x); //求输入点的绝对值
y= fabs( y);
cout<<"取绝对值后坐标为("<<x<<","<<y<<")"<<endl;
k=juli(x,y,2,2);//调用求距离函数,求(x,y),(2,2)两点的距离
if(k<=1) //当(x,y)与(2,2)的距离小于等于1时,则该点在建筑上
cout<<"该点再建筑物的高度为10m"<<endl;
else //当(x,y)与(2,2)的距离大于1时,则该点不在建筑上
cout<<"该点再建筑物的高度为0m"<<endl;
return 0;
}
float juli(float x1,float y1,float x2,float y2)//求(x1,y1)和(x2,y2)之间的距离
{
float t;
t=sqrt((x1-x2)*(x1-x2)+(y1+y2)*(y1-y2));
return t;
}
/****编程计算s=1!+2!+3!+......n!
(其中n为整数,n!表示计算n阶乘)***/
#include<iostream>
using namespace std;
int main()
{
long i,n,m,sum;
cout<<"请输入一个正整数:";
cin>>n;
sum=0;
m=1;
for(i=1;i<=n;i++)
{
m*=i;
sum+=m;
}
cout<<sum<<endl;
return 0;
}
/*****************************
**功能:计算1!+2!+3!+……+n!**
*****************************/
#include<iostream>
using namespace std;
int main()
{
unsigned int n,i,j,k=1;
long unsigned int s=0;
cout<<"计算1!+2!+3!+……+n!"<<endl;
cout<<"请输入整数n的值:";
cin>>n;
for(i=1;i<=n;i++)
{
for(j=i;j>=1;j--)
{
k*=j;
}
s+=k;
k=1;
}
cout<<"经计算得:";
cout<<"s="<<s<<endl;
}
/******************************
*** 功能:猴子爱吃苹果问题 ***
******************************/
#include<iostream>
using namespace std;
int main()
{
int s=1,i;//定义s表示苹果的数量,由于第十天还剩一个,所以初始值为1;
cout<<"猴子第一天摘了若干个苹果,当时吃了一半,还不过隐,又多吃了一个。"<<endl;
cout<<"第二天,又吃掉余下的一半,又多吃一个。"<<endl;
cout<<"以后每一天,都是吃掉前一天余下的一半零一个。"<<endl;
cout<<"到第10天,只有一个苹果了。"<<endl;
cout<<"问猴子第一天共摘了多少个苹果?"<<endl;
for(i=1;i<10;i++)//一共吃了九天,所以循环九次
{
s=(s+1)*2;
}
cout<<"经计算:猴子一共摘了"<<s<<"个苹果"<<endl;
return 0;
}
#include<iostream>
using namespace std;
/**将张三,李四,王五分别记为a,b,c;将陈六,赵七,宋八分别记为A,B,C**/
int main()
{
int m=0;
char i,j,k;//定义i,j,k;i为a的对手,j为b的对手,k为c的对手
cout<<"将张三,李四,王五分别记为a,b,c"<<endl;
cout<<"将陈六,赵七,宋八分别记为A,B,C"<<endl;
for(i='A';i<='C';i++)
for(j='A';j<='C';j++)
for(k='A';k<='C';k++)
{
if(i!=j&&i!=k&&j!=k)
{
if(i!='A'&&k!='A'&&k!='C')
{
cout<<"比赛名单如下:"<<endl;
cout<<"a对抗"<<i<<" "<<"b对抗"<<j<<" "<<"c对抗"<<k<<" ";
}
}
}
return 0;
}