200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > 【C语言程序】鸡兔同笼问题

【C语言程序】鸡兔同笼问题

时间:2022-02-20 15:40:22

相关推荐

【C语言程序】鸡兔同笼问题

嗨~大家好,这里是可莉!

今天给大家带来的程序是鸡兔同笼问题。

废话不多说,直接上代码!!

【程序一】鸡和兔子共n只,共m条脚。输入n和m,输出鸡和兔子的数量。如果没有解,输出“No”。

问题分析:设鸡有a只,兔有b只,则a + b = n,2a + 4b = m,联解得a = (4n-m)/2,b = n-a.在什么情况下有正解呢?首先,a和b都是整数;其次,a和b必须是非负的。

#include <stdio.h>#include <stdlib.h>int main(){int chicken, rabbit, n, m;scanf_s("%d", &n);scanf_s("%d", &m);chicken = (4 * n - m) / 2;rabbit = n - chicken;if (m % 2 == 1 || chicken < 0 || rabbit < 0)printf("No");elseprintf("%d %d\n", chicken, rabbit);return 0;}

【程序二】“鸡兔同笼”是我国古代著名趣题之一。大约在1500年前,《孙子算经》中就记载了这个有趣的问题。书中是这样叙述的:“今有雉兔同笼,上有三十五头,下有九十四足,问雉兔各几何?这四句话的意思是:有若干只鸡兔同在一个笼子里,从上面数,有35个头;从下面数,有94只脚。求笼中各有几只鸡和兔?

现有n个头和m个脚,要你写一个程序计算到底有多少只鸡和兔。

输入数据有一行,共2个整数n和m,以空格分隔。

输出每组数据的输出都只有一行,分别是鸡和兔的数量。

#include<stdio.h>int main(){int m, n;scanf_s("%d %d", &n, &m);printf("%d %d", (4 * n - m) / 2, (m - 2 * n) / 2);return 0;}

【程序三】鸡兔同笼问题,已知共有35个头,94个脚,求鸡兔各有只。

#include<stdio.h>int main(int argc, const char* argv[]){int i, j;for (i = 1; i <= 35; i++)//ji{for (j = 1; j <= 35; j++)//tu{if (35 == i + j && (2 * i + 4 * j) == 94){printf("chicken=%d rabbit=%d\n", i, j);}}}return 0;}

恭喜你又学会了一个小知识!!(学会了就赶快行动起来把!)

码字不易!都看到这啦 可以给我点赞收藏支持一下 万分感谢

今天就分享到这!!

如果有学习上的问题或者想要更多学习资料,项目源码,视频教学可以点击我的主页,进群,欢迎大家积极讨论!!!

群主是我自己啦! 欢迎大家进群交流!

点击即可进群http://点击链接加入群聊【C语言C++交流学习群】:/?_wv=1027&k=po3wQQTP

后续UP主还会发布更多的项目源码以及学习资料,希望大家可以持续关注,有什么问题可以回帖留言。想要C/C++学习资料以及其他项目的源码的可以加群【684197747】了解。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。