某人有15个空啤酒瓶,已知4个啤酒瓶可以换一瓶啤酒,问一共可以换多少瓶瓶酒。
答案是5瓶,因为最后剩余三个可以找老板借一个空瓶,等喝完后还给老板。
前天的C#课上,想到用C#编写。
实现如下。
//designbysuperdont
//lilizong[at]gmail
usingSystem;
classDoloop
...{
publicstaticvoidMain()
...{
int[]a=newint[10];
//用于存放当前的空酒瓶个数
int[]b=newint[10];
//用于存放可以换取的酒的瓶数
int[]c=newint[10];
//用于存放每次换取后,剩余的不足4个的酒瓶个数
a[0]=15;
intsum=0;
inti;
for(i=0;i<10;i++)
...{
b[i]=a[i]/4;
c[i]=a[i]%4;
a[i+1]=c[i]+b[i];
if(a[i+1]<=3)
...{
if(a[i+1]==3)
b[i+1]=1;
//如果最后剩余三个,可以找老板借一个空瓶,多换一瓶啤酒
break;
}
}
for(i=0;i<10;i++)
...{
Console.Write("{0}",a[i]);
}
Console.WriteLine();
for(i=0;i<10;i++)
Console.Write("{0}",b[i]);
Console.WriteLine();
for(i=0;i<10;i++)
Console.Write("{0}",c[i]);
for(i=0;i<10;i++)
sum=sum+b[i];
//求各次累计的和,即为总计可以换取的瓶数
Console.WriteLine();
Console.WriteLine("可以换取的啤酒评述为:");
Console.WriteLine(sum);

}



}
本文通过C#编程解决了一个经典的数学问题——利用空啤酒瓶换取啤酒。具体介绍了如何使用循环和数组来跟踪每次交换的过程及最终能获得的啤酒数量。

被折叠的 条评论
为什么被折叠?



