鸡兔同笼,头30,脚90,下面程序段计算鸡兔各有多少只,程序填空为
for(x=1;x<=30;x++)
{
y=30-x;
if(4*x+(30-x)*2==90)
printf("%d,%d",x,y);
}
“鸡兔同笼问题”是我国古算书《孙子算经》中著名的数学问题,其内容是:有若干只鸡和兔在同个笼子里,从上面数,有三十五个头;从下面数,有九十四只脚。求笼中各有几只鸡和兔?
孙子的解法是让兔子和鸡同时抬起两只脚,这样笼子里的脚就减少了总头数×2只,由于鸡只有2只脚,所以笼子里只剩下兔子的两只脚,再÷2就是兔子数。
扩展资料:
for循环语法为for( ; ; )。for循环小括号里第一个“;”号前为一个为不参与循环的单次表达式,其可作为某一变量的初始化赋值语句, 用来给循环控制变量赋初值; 也可用来计算其它与for循环无关但先于循环部分处理的一个表达式。
执行的中间循环体可以为一个语句,也可以为多个语句,当中间循环体只有一个语句时,其大括号{}可以省略,执行完中间循环体后接着执行末尾循环体。
执行末尾循环体后将再次进行条件判断,若条件还成立,则继续重复上述循环,当条件不成立时则跳出当下for循环。
streamh>
int main()
{
while ( true )
{
int m, n;
cout<<"请输入头的个数"<<endl;
cin>>m;
if ( m<0 )
{
cout<<"头的个数不能为负值"<<endl;
continue;
}
cout<<"请输入脚的个数"<<endl;
cin>>n;
if ( m<0 )
{
cout<<"脚的个数不能为负值"<<endl;
continue;
}
int nResult = 0;
for ( int iT=0; iT<m; iT++)
{
int iJ = m - iT;
if ( (4iT + 2iJ)== n)
{
cout<<"兔子"<<iT<<"只,鸡"<<iJ<<"只"<<endl;
nResult++;
}
}
if ( 0 == nResult )
{
cout<<"无解!"<<endl;
return -1;
}
else
{
cout<<"共有"<<nResult<<"个解!"<<endl;
return nResult;
}
}
return 0;
}
这个题目中没有注明鸡兔共多少只,所以会有多个答案。如果有鸡兔共多少只,就在判断语句中加上。 if i2+j4=50 and i+j=xxx then
另外过程不完整,没有如Private Sub Form_Click()这个过程开始。加上就可以了。
鸡兔同笼是中国古代的数学名题之一。
大约在1500年前,《孙子算经》中就记载了这个有趣的问题。书中是这样叙述的:
今有雉兔同笼,上有三十五头,下有九十四足,问雉兔各几何?
这四句话的意思是:
有若干只鸡兔同在一个笼子里,从上面数,有35个头,从下面数,有94只脚。问笼中各有多少只鸡和兔?
已知鸡和兔的总数量为n,总腿数为m。输入n和m,依次输出鸡和兔的数目,如果无解,则输出“No answer”
程序如下:
#include <stdioh> int main()
{ int T; int n; int m;
scanf("%d",&T);
while(T--)
{
scanf("%d%d",&n,&m);
if((m-2n)>=0 && (m-2n)%2==0 && (4n-m)>=0 && (4n-m)%2==0)
printf("%d %d\n",(4n-m)/2,(m-2n)/2);
else
printf("No answer\n");
} return 0;
}
扩展资料:
C语言新手编程注意事项:
1、书写标识符时,忽略了大小写字母的区别。
2、忽略了变量的类型,进行了不合法的运算。
3、将字符常量与字符串常量混淆。
4、忽略了“=”与“==”的区别。
5、忘记加分号。
6、多加分号。
7、输入变量时忘记加地址运算符“&”。
8、输入数据的方式与要求不符。
参考资料来源:百度百科-C语言
以上就是关于鸡兔同笼,头30,脚90,下面程序段计算鸡兔各有多少只,请分析程序填空 for(x=1;x<=__全部的内容,包括:鸡兔同笼,头30,脚90,下面程序段计算鸡兔各有多少只,请分析程序填空 for(x=1;x<=__、C++语言程序设计 - 鸡兔同笼 ,求解、VB程序编程鸡兔同笼等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)