本文目錄一覽:
- 1、一瓶酒2元,4個瓶蓋換一瓶酒,2個酒瓶換一瓶酒,那麼10元能買幾瓶酒c 語言編程
- 2、啤酒2塊1瓶,4個蓋換1瓶,2個空瓶換1瓶,10塊可以喝幾瓶? .用C語言編程解決,在線等,急啊!
- 3、用c語言解答
- 4、啤酒2元錢1瓶!4個瓶蓋換1瓶!2個空瓶換1瓶!問:10元錢可以喝幾瓶?
- 5、啤酒2塊錢一瓶,4個瓶蓋可以換一瓶,2個瓶子可以 換一瓶啤酒,x塊錢可以喝幾瓶啤酒我用C語言編的,但有錯
- 6、兩元一瓶啤酒,四個瓶蓋換一瓶,兩個空瓶換一瓶,問十塊錢能喝幾瓶
一瓶酒2元,4個瓶蓋換一瓶酒,2個酒瓶換一瓶酒,那麼10元能買幾瓶酒c 語言編程
不說了,直接上代碼:
#includestdio.h
int cap;
int bottle;
int wines;
int money_to_wine(int money){
cap += money/2;
bottle += money/2;
return money/2;
}
void cap_to_wine(void){
int can_buy_wine = cap/4;
wines += can_buy_wine;
bottle += can_buy_wine;
cap -= can_buy_wine * 4;
cap += can_buy_wine;
}
void bottle_to_wine(void){
int can_buy_wine = bottle/2;
wines += can_buy_wine;
cap += can_buy_wine;
bottle -= can_buy_wine * 2;
bottle += can_buy_wine;
}
int main(void){
int money = 10;
wines = money_to_wine(money);
while(cap = 4 || bottle = 2){
if(cap = 4)
cap_to_wine();
if(bottle = 2)
bottle_to_wine();
}
printf(“money %d can buy total %d wines.\n”, money, wines);
return 0;
}
啤酒2塊1瓶,4個蓋換1瓶,2個空瓶換1瓶,10塊可以喝幾瓶? .用C語言編程解決,在線等,急啊!
// 代碼有不懂的問我
#includeiostream
using namespace std;
void drinkBeer(int money, int bottleNum, int capNum, int beerNum) {
if (money 2 bottleNum 2 capNum 4) {
return;
}
// 拿錢換酒
if (money 2) {
int drinkNum = money / 2;
beerNum += drinkNum;
bottleNum += drinkNum;
capNum += drinkNum;
money -= drinkNum * 2; // 剩餘的錢
drinkBeer(money, bottleNum, capNum, beerNum);
}
// 拿瓶子換酒
if (bottleNum 2) {
int drinkNum = bottleNum / 2;
bottleNum -= drinkNum * 2; // 喝完後多餘沒喝的瓶子數
beerNum += drinkNum;
bottleNum += drinkNum;
capNum += drinkNum;
drinkBeer(money, bottleNum, capNum, beerNum);
}
// 拿瓶蓋換酒
if (capNum 4) {
int drinkNum = capNum / 4;
capNum -= drinkNum * 4;
beerNum += drinkNum;
bottleNum += drinkNum;
drinkBeer(money, bottleNum, capNum, beerNum);
}
}
int main() {
int money = 10;
int bottleNum = 0;
int capNum = 0;
int beerNum = 0;
drinkBeer(money, bottleNum, capNum, beerNum);
printf(“總共喝了%d瓶\n”, beerNum);
system(“pause”);
return 0;
}
用c語言解答
#includestdio.h
int get_number(int money);
int main(){
int money;
printf(“Please input money:\n”);
scanf(“%d”, money);
printf(“You can drink %d bottles of beer.\n”, get_number(money));
return 0;
}
int get_number(int money){
int cap, bottle;
int number;
number = cap = bottle = money / 2;
while (cap = 4 || bottle = 2){
int tmp_cap = cap / 4;
int tmp_bottle = bottle / 2;
cap = cap – tmp_cap*4 + tmp_cap + tmp_bottle;
bottle = bottle – tmp_bottle * 2 + tmp_cap + tmp_bottle;
number = number + tmp_cap + tmp_bottle;
}
return number;
}
啤酒2元錢1瓶!4個瓶蓋換1瓶!2個空瓶換1瓶!問:10元錢可以喝幾瓶?
10元可以15瓶啤酒。
計算步驟如下:
先拿10元全部買啤酒5瓶,喝完之後會有5個瓶蓋和5個空瓶;
之後我們拿4個瓶蓋去換1瓶啤酒,4個空瓶換2瓶啤酒,全部喝完之後再次剩4個瓶蓋和4個空瓶;
再拿4個瓶蓋換1瓶啤酒,4個空瓶換2瓶啤酒,喝完之後我們得到3個瓶蓋和3個空瓶;
再用這2個空瓶換1瓶啤酒,喝完之後我們得到4個瓶蓋,2個空瓶;
再次用4個瓶蓋換1瓶啤酒,兩個空瓶換1瓶啤酒,喝完後剩下2個空瓶和2個瓶蓋;
最後拿2個空瓶換1瓶啤酒,喝完後我們得到3個瓶蓋和1個空瓶。
到了這一步就無法再進行兌換,綜合全面喝過的啤酒,一共是十五瓶。
拓展資料:
“空瓶換酒”問題是數學運算中的一類趣味問題,來源於商家為了充分回收啤酒瓶的一種促銷活動,頻繁地出現在考試中。
這類問題整體難度不大,是考生易得分的一種題型。
這類問題在題干中往往會有一句話說m個空瓶換n瓶水,我們一般轉化成多少個空瓶換1個水來操作會方便解題。比如4個空瓶換2瓶水,則有2空瓶=1瓶+1水(不含瓶的水)。
【例】一塊鋼錠可以鑄成25個機器零件的毛坯,每加工5個機器零件的毛坯所剩的腳料又可以鑄成一個機器零件的毛坯。現在有這種鋼錠10塊,最多可以加工多少個機器零件毛坯?
A.311 B.312 C.313 D.314
每5個毛坯腳料可以換一個毛坯,相當於每5個空瓶可以換1瓶水,則有:
5腳料=1毛坯+1腳料,則1腳料=1/4毛坯,一塊做25個毛坯,10塊做250個毛坯。產生250塊毛坯腳料,這些腳料可以做成250×1/4=62.5個毛坯。共有零件毛坯250+62.5=312.5個,取整為312個,選B。
啤酒2塊錢一瓶,4個瓶蓋可以換一瓶,2個瓶子可以 換一瓶啤酒,x塊錢可以喝幾瓶啤酒我用C語言編的,但有錯
#include”stdio.h”
/*啤酒2塊錢一瓶,4個瓶蓋可以換一瓶,2個瓶子可以
換一瓶啤酒,x塊錢可以喝幾瓶啤酒?*/
void main()
{
int money,beer,bottle,cap,sum;
scanf(“%d”,money);
bottle=cap=sum=money/2;
while(!(cap4 bottle 2)) //當瓶蓋數小於4並且瓶子數小於2時,就不能換啤酒了哇
{
sum+=bottle/2; //瓶子換啤酒
sum+=cap/4; //瓶蓋換啤酒
//瓶蓋兌換成啤酒之後的瓶蓋數和瓶子數
bottle+=cap/4; //4個瓶蓋換一瓶啤酒,那麼瓶子數增加的數量
cap=cap/4+cap%4;
//瓶子兌換成啤酒之後的瓶蓋數和瓶子數
cap+=bottle/2; //2個瓶子換啤酒後增加的瓶蓋數
bottle=bottle/2+bottle%2;
}
printf(“能喝的啤酒數量 = %d 瓶\n”,sum);
}
兩元一瓶啤酒,四個瓶蓋換一瓶,兩個空瓶換一瓶,問十塊錢能喝幾瓶
10塊錢可以喝酒20瓶,有2種方法計算:
第一種:2元1瓶瓶酒,4個瓶蓋換1瓶,2個瓶子換一瓶,算下來:1個瓶蓋0.5元,1個瓶子1元,1瓶啤酒凈水=2-0.5-1=0.5元,這樣10/0.5=20瓶啤酒
第二種:10元買5瓶啤酒,然後借15瓶酒,這樣一共喝20瓶啤酒。喝完後20個空瓶換10瓶啤酒,20個瓶蓋換5瓶啤酒,一共換15瓶啤酒還掉。
OK,共喝酒瓶數=5+15=20瓶酒。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/282840.html