python 百钱买百鸡的土豪生活

简介: 我国古代数学家张丘建在《算经》一书中曾提出过著名的“百钱买百鸡”问题,该问题叙述如下:鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一;百钱买百鸡,则翁、母、雏各几何?

百钱买百鸡



我国古代数学家张丘建在《算经》一书中曾提出过著名的“百钱买百鸡”问题,该问题叙述如下:鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一;百钱买百鸡,则翁、母、雏各几何?


翻译过来,意思是公鸡一个五块钱,母鸡一个三块钱,小鸡三个一块钱,现在要用一百块钱买一百只鸡,问公鸡、母鸡、小鸡各多少只?

分析
 1. 设:公鸡x只,母鸡y只,小鸡3只为z。
 2. 100 = 5x+3y+z  #100元买的鸡的数量
 3. 100 = x+y+3z  #100只鸡
 4. z/3 == 0 #z能够被3整除
 5. x,y,z/3均大于零小于100


只有符合以上条件才可以满足。


代码如下:


#百钱买百鸡 (在里面z表示一只小鸡)
for x in range(100):
      for y in range(100):
            for z in range(100):  #x,y,z分别进行循环
                  if (5*x+3*y+z/3) == 100 and z%3 == 0 and x+y+z == 100:
                        print("公鸡%d,母鸡%d,小鸡%d"%(x,y,z))
#结果代码
公鸡0,母鸡25,小鸡75
公鸡4,母鸡18,小鸡78
公鸡8,母鸡11,小鸡81
公鸡12,母鸡4,小鸡84


以上使用的函数及语句


for 语句  基本的循环语句
if  语句  基本判定语句
and  且
range()   函数 生成


以下为C语言的代码大家可以用于对比


#include <stdio.h>
int main()
{
    int i, j, k;
    printf("百元买百鸡的问题所有可能的解如下:\n");
    for( i=0; i <= 100; i++ )
        for( j=0; j <= 100; j++ )
            for( k=0; k <= 100; k++ )
            {
                if( 5*i+3*j+k/3==100 && k%3==0 && i+j+k==100 )
                {
                    printf("公鸡 %2d 只,母鸡 %2d 只,小鸡 %2d 只\n", i, j, k);
                }
            }
    return 0;
}
// 运行结果:
百元买百鸡的问题所有可能的解如下:
公鸡  0 只,母鸡 25 只,小鸡 75 只
公鸡  4 只,母鸡 18 只,小鸡 78 只
公鸡  8 只,母鸡 11 只,小鸡 81 只
公鸡 12 只,母鸡  4 只,小鸡 84 只


新手小白如有问题及时留言,好好探讨,感谢大家的支持!

目录
相关文章
|
知识图谱 Python
Python初级实现几个简单的经典案例,斐波那契数列、九九乘法表、回文素数、百钱百鸡【第一课】
Python模拟斐波那契数列输出,编写程序,输出九九乘法表,Python实现百钱百鸡,求 2-1000内的所有回文素数,利用递归实现1+2+3+…100
431 1
Python初级实现几个简单的经典案例,斐波那契数列、九九乘法表、回文素数、百钱百鸡【第一课】
python案例:百钱买鸡
一只公鸡值五钱; 一只母鸡值三钱; 三只小鸡值一钱; 现在要用百钱买百鸡; 请问公鸡、母鸡、小鸡各多少只?
|
Python
Python基础作业:百钱百鸡问题、求最大公倍数和最小公约数、判断回文数
Python基础作业:百钱百鸡问题、求最大公倍数和最小公约数、判断回文数
413 0
Python基础作业:百钱百鸡问题、求最大公倍数和最小公约数、判断回文数
|
数据采集 机器学习/深度学习 人工智能
Python:现代编程的首选语言
Python:现代编程的首选语言
1760 102
|
数据采集 机器学习/深度学习 算法框架/工具
Python:现代编程的瑞士军刀
Python:现代编程的瑞士军刀
561 104
|
人工智能 自然语言处理 算法框架/工具
Python:现代编程的首选语言
Python:现代编程的首选语言
458 103
|
机器学习/深度学习 人工智能 数据挖掘
Python:现代编程的首选语言
Python:现代编程的首选语言
472 82
|
11月前
|
Python
Python编程:运算符详解
本文全面详解Python各类运算符,涵盖算术、比较、逻辑、赋值、位、身份、成员运算符及优先级规则,结合实例代码与运行结果,助你深入掌握Python运算符的使用方法与应用场景。
581 3
|
11月前
|
数据处理 Python
Python编程:类型转换与输入输出
本教程介绍Python中输入输出与类型转换的基础知识,涵盖input()和print()的使用,int()、float()等类型转换方法,并通过综合示例演示数据处理、错误处理及格式化输出,助你掌握核心编程技能。
822 3
|
11月前
|
并行计算 安全 计算机视觉
Python多进程编程:用multiprocessing突破GIL限制
Python中GIL限制多线程性能,尤其在CPU密集型任务中。`multiprocessing`模块通过创建独立进程,绕过GIL,实现真正的并行计算。它支持进程池、队列、管道、共享内存和同步机制,适用于科学计算、图像处理等场景。相比多线程,多进程更适合利用多核优势,虽有较高内存开销,但能显著提升性能。合理使用进程池与通信机制,可最大化效率。
682 3