xiao-wugui 发表于 2020-7-28 11:48:34

100元买100个水果

一个橘子3元,一个梨4元,橄榄一元7个
怎么用100元买100水果?(那100个水果是上面三种水果的和)
(100元也要正好用完)

sunrise085 发表于 2020-7-28 11:48:35

本帖最后由 sunrise085 于 2020-7-28 12:13 编辑

什么语言??
给你个python版本
for z in range(7,98,7):
    for y in range(25):
      for x in range(33):
            if x+y+z==100 and 3*x+4*y+z/7==100:
                print("橘子%d个,梨%d个,橄榄%d个"%(x,y,z))

结果:
橘子30个,梨0个,橄榄70个
橘子3个,梨20个,橄榄77个

再给你个C语言版
#include<stdio.h>
int main()
{
    int x,y,z;
    for (z=7;z<98;z+=7)
      for(y=0;y<25;y++)
            for(x=0;x<33;x++)
            if(x+y+z==100 &&x*3+y*4+z/7==100)
                printf("橘子%d个,梨%d个,橄榄%d个\n",x,y,z);
    return 0;
}
需要其他语言,你再说话

my少年时代 发表于 2020-7-28 12:07:34

设橘子x个梨y个橄榄z个
x+y+z=100
3x+4y+z/7=100
x,y,z为自然数
解不定方程得x=3,y=20,z=77
即橘子3个,梨20个,橄榄77个

zfcq 发表于 2020-7-28 12:16:05

sunrise085 发表于 2020-7-28 12:08
什么语言??
给你个python版本



还能优化一下

sunrise085 发表于 2020-7-28 12:17:44

zfcq 发表于 2020-7-28 12:16
还能优化一下

当然能啦!循环次数能减少一多半。只是代码会多一些,担心他看不懂

xiao-wugui 发表于 2020-7-28 12:24:29


zfcq 发表于 2020-7-28 12:16
还能优化一下


当然能啦!循环次数能减少一多半。只是代码会多一些,担心他看不懂
我看懂

little-fish 发表于 2020-7-28 13:03:37

for b in range(25):
    for a in range(33):
      c = 100 - a - b
      if a*3 + b*4 + c/7 == 100:
            print("橘子",a,"个","梨",b,"个","橄榄",c,"个")


python来交作业了
页: [1]
查看完整版本: 100元买100个水果