多语言展示
当前在线:1523今日阅读:91今日分享:37

C语言实现百马百担(穷举法)

使用穷举法实现百马百担:100匹马,100担货,大马3担,中马2担,两匹小马1担,大马、中马、小马各多少?
工具/原料
1

Dev C++

2

电脑

方法/步骤
1

第一步:首先,我们先打开我们的DEV C++软件,然后点击“新建源代码”,或者直接按住键盘上的Ctrl+n进行新建源代码

2

第二步:新建好文件项目之后,我们在我们的编辑页面输入以下代码:#include int main(){ int x,y,z; //x为大马,y为中马,z为小马 int n=0; //总的伏担货所需马的方法 printf('总的伏担货所需马的方法:\n'); for(x=0;x<=33;x++) //大马的数量  for(y=0;y<=50;y++) //中马的数量  { z=100-x-y; //小马的数量  if(3*x+2*y+z/2==100) //判断是否100匹马伏100担货  { n++; //累加伏担货方法  printf('大马:%d   中马:%d   小马:%d\n',x,y,z); }  } printf('有%d种伏担货所需马的方法',n); //输出总的伏担货所需马的方法 return 0; }

3

第三步:代码编写完成之后,我们点击“运行”,即菜单栏上的第二个四色块正方形的按钮进行运行,或者直接按住键盘上的F11进行编译运行

4

第四步:运行之后,我们即可看到我们这次程序代码要实现的算法效果了。穷举法其实就是将所有可能发生的情况都列举出来

5

第五步:在代码中,主要是使用两个for循环进行相互嵌套,第一个for循环算出大马的数量,第二个for循环算出中马的数量,再用总的数量减去中马和大马的数量即可得到小马的数量

6

第六步:因为我们在进行算法时,还要考虑一个问题就是我们的担子问题,不同年龄段的马它能负重的担数是不一样的,所以这里我们使用一个if判断语句进行判断,判断它们能负担的情况

7

以上就是我的方法,希望能帮助到你,有误之后还望多多见谅啦

推荐信息