百科问答小站 logo
百科问答小站 font logo



水壶问题-C语言课程设计


user avatar   网友的相关建议: 
      没思路啊
我的做法是这样
我先吧L7整满,-3-3后这样L7就有有1L的水了,循环5次就哦了,没啥思路。就不写码了
user avatar   网友的相关建议: 
      参阅这个:
法国著名数学家波瓦松在表年时代研究过一个有趣的数学问题:某人有12品脱的啤酒一瓶,想从中倒出6品脱,但他没有6品脱的容器,仅有一个8品脱和5品脱的容器,怎样倒才能将啤酒分为两个6品脱呢?

*问题分析与算法设计
将12品脱酒 8品脱和5品脱的空瓶平分,可以抽象为解不定方程:
8x-5y=6
其意义是:从12品脱的瓶中向8品脱的瓶中倒x次,并且将5品脱瓶中的酒向12品脱的瓶中倒y次,最后在12品脱的瓶中剩余6品脱的酒。
用a,b,c代表12品脱、8品脱和5品脱的瓶子,求出不定方程的整数解,按照不定方程的意义则倒法为:
a -> b -> c ->a
x y
倒酒的规则如下:
1) 按a -> b -> c ->a的顺序;
2) b倒空后才能从a中取
3) c装满后才能向a中倒
按以上规则可以编写出程序如下:

*程序说明与注释
#include<stdio.h>
void getti(int a,int y,int z);
int i; /*最后需要分出的重量*/
int main()
{
int a,y,z;
printf("input Full a,Empty b,c,Get i:"); /*a 满瓶的容量 y:第一个空瓶的容量 z:第二个空瓶的容量*/
scanf("%d%d%d%d",&a,&y,&z,&i);
getti(a,y,z); /*按a -> y -> z -> a的操作步骤*/
getti(a,z,y); /*按a -> z -> y -> a的步骤*/
}
void getti(int a,int y,int z) /*a:满瓶的容量 y:第一个空瓶的容量 z:第二个空瓶的容量*/
{
int b=0,c=0; /* b:第一瓶实际的重量 c:第二瓶实际的重量*/
printf(" a%d b%d c%d %4d%4d%4d ",a,y,z,a,b,c);
while(a!=i||b!=i&&c!=i) /*当满瓶!=i或另两瓶都!=i*/
{
if(!b)
{ a-=y; b=y;} /*如果第一瓶为空,则将满瓶倒入第一瓶中*/
else if(c==z)
{ a+=z; c=0;} /*如果第二瓶满,则将第二瓶倒入满瓶中*/
else if(b>z-c) /*如果第一瓶的重量>第二瓶的剩余空间*/
{ b-=(z-c);c=z;} /*则将装满第二瓶,第一瓶中保留剩余部分*/
else{ c+=b; b=0;} /*否则,将第一瓶全部倒入第二瓶中*/
printf(" %4d %4d %4d ",a,b,c);
}
}



相关电水壶话题

大众CC玻璃水壶是多大的
宝马x5玻璃水壶多大容量
一般自行车水壶的直径是多大的?
13经典福克斯玻璃水壶容量多少
现代朗动雨刮蓄水壶容量
雨刮水壶的容量有多大
大家好,请问水壶的容量是多少升,是怎样计算的
热水壶额定容量是什么意思
长安CS35 Plus玻璃水壶容量有多大?
现代悦动雨刮器水壶容量多大啊~
允许带1l容量的保温水壶登机吗
速腾2014款1.6的雨刮器水壶的容量是多大的
一个开水壶的容量大约为a5毫升b500毫升c5升是ab还是c
我是骑自行车的,现在想买一个冬季骑行水杯,要求没味道,保温好,可以单手操作的,容量建议大一点,水壶
广度优先搜索 倒水问题:用两个容量为x和y(x>y)的水壶倒出z升的水。z不大于x。
单人户外水壶用多大的合适
电水壶1.2L的容量,够了吗?
水壶的容量怎么还有个内壁容量
自行车水壶多少容量为宜 700ml 还是600ml
英朗雨刮器水壶容量多少



前一个讨论
谁能说说 水杯,水瓶,水壶 三者的区别?
下一个讨论
大众CC玻璃水壶是多大的





© 2024-10-07 - tinynew.org. All Rights Reserved.
© 2024-10-07 - tinynew.org. 保留所有权利