给20块钱买可乐,每瓶可乐3块钱,喝完之后退瓶子可以换回1块钱,问最多可以喝到多少瓶可乐

package com.Summer_0417.cn;

/**
* @author Summer
* 给20块钱买可乐,每瓶可乐3块钱,喝完之后退瓶子可以换回1块钱,问最多可以喝到多少瓶可乐。
*/
public class Test_Method12 {

public static void main(String[] args) {
int money = 20, price = 3;
// bottle表示每一次购买的可乐瓶数
int bottle = 0;
// change表示每次购买完可乐剩下的钱
int change = 0;
// sum表示总的可乐瓶数
int sum = 0;
while (money>=price) {
bottle = money/price;//购买可乐
change = money - price*bottle;//计算买可乐剩下的钱或者是change=money%price
money = change+bottle;//换完瓶子后总共有多少钱
sum+=bottle;//购买可乐的总数
}
System.out.println("购买可乐的总数"+sum);

}

}

原文地址:https://www.cnblogs.com/summerdata/p/10726913.html

时间: 2024-11-28 18:37:19

给20块钱买可乐,每瓶可乐3块钱,喝完之后退瓶子可以换回1块钱,问最多可以喝到多少瓶可乐的相关文章

1 元钱买一瓶汽水,两个空汽水瓶换一瓶汽水。现有 20 元钱,问最多可以喝到多少瓶汽水?

答案一:20+10+5+2+ 1+ 1= 39瓶 答案二:20+ 10+ 5+ 2+ 1+ 1+ 1= 40 一开始 20瓶没有问题,随后的 10瓶和 5瓶也都没有问题,接着把 5瓶分成 4瓶和 1瓶,前 4个空瓶再换 2瓶,喝完后 2瓶再换 1瓶,此时喝完后手头上剩余的空瓶数为 2个,把这 2个瓶 换 1瓶继续喝,喝完后把这 1个空瓶换 1瓶汽水,喝完换来的那瓶再把瓶子还给人家即可,所以最多可以喝的汽水数为: 20+ 10+ 5+ 2+ 1+ 1+ 1= 40.但是题目中并没有说可以赊账,因此

用JS来计算百钱买百鸡

怎样用一百块买一百只鸡?已知公鸡5块一只,母鸡3块一只,小鸡一块钱3只: 需要用到for循环嵌套,并且通过优化代码,可以加快运行效率. <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>百钱买百鸡</title> </head> <body> <p>怎样用一百块买一百只鸡

3. 百钱买白鸡问题

这是一个古老而非常经典的问题,最早源自中国古代的算经,中国古代数学家张丘建在他的算经中提出了著名的百钱买白鸡的问题: 鸡翁1, 值钱5,鸡母1,值钱3,鸡雏3值钱1,百钱买白鸡,问翁,母,雏各几何? 100文钱买100只鸡,公鸡5文钱一只,母鸡3文一只,小鸡3只1文钱:100文钱买了100只鸡,请问公鸡,母鸡,小鸡各有多少? #include <stdio.h> #include <stdlib.h> int main() {     int i,j,k;     for(i=0;

0002_百钱买鸡

百钱买鸡:公鸡5文钱一只,母鸡3文钱一只,小鸡3只一文钱,用100文钱买100只鸡,其中公鸡,母鸡,小鸡都必须要有,问公鸡,母鸡,小鸡要买多少只刚好凑足100文钱? 思路:设定公鸡,母鸡,小鸡各买x,y,z只,则满足下列条件: x+y+z=100; 5x+3y+z/3=100: 1 __author__ = 'qq593' 2 # /usr/bin/python 3 # -*- coding:utf-8 -*- 4 5 #x is the unknown number 6 for y in ra

SDUST 软件工程2016-作业4-A 百钱买鸡问题

解决百钱买鸡问题原本并不困难,关键的是这道题对其进行了升级,测试数据太大,传统的解法,像三重循环,二重循环都会导致超时. 这道题正确的解法应该是结合数学方程进行化简,将其转化为1层循环: x+y+z=n ax+by+c/d*z=m 由上述两个方程联立可用其他量表示出y来.从而只需要枚举x就能解决该题. 在求方程之后注意要化简,只有能整除的时候才进行整除.最后与m比较的时候因为c/d的问题,所以等式两边同时乘以d以消除误差. 最后千万不要加上z%d==0的条件,因为例如当3元买12小鸡的时候,实际

经典算法题每日演练——第一题 百钱买百鸡

原文:经典算法题每日演练--第一题 百钱买百鸡 百钱买百鸡的问题算是一套非常经典的不定方程的问题,题目很简单:公鸡5文钱一只,母鸡3文钱一只,小鸡3只一文钱, 用100文钱买一百只鸡,其中公鸡,母鸡,小鸡都必须要有,问公鸡,母鸡,小鸡要买多少只刚好凑足100文钱. 分析:估计现在小学生都能手工推算这套题,只不过我们用计算机来推算,我们可以设公鸡为x,母鸡为y,小鸡为z,那么我们 可以得出如下的不定方程, x+y+z=100, 5x+3y+z/3=100, 下面再看看x,y,z的取值范围. 由于只

华为初级——百钱买百鸡

源程序: #include<iostream> using namespace std; int main() { for(int i=0;i<=20;i++) { for(int j=0;j<34;j++) { for(int k=0;k<=300;k=k+3) { if(i*5+j*3+k/3==100&&i+j+k==100) cout<<i<<' '<<j<<' '<<k<<end

Swift趣味案例之百钱买百鸡

[问题描述]    用100文钱买100只鸡,其中公鸡5文钱1只,母鸡3文钱1只,小鸡1文钱3只.问:公鸡.母鸡和小鸡各买了几只? [设计思路]    设公鸡.母鸡和小鸡的只数分别为x.y.z,根据题意可得如下方程组: x + y + z = 100 5x + 3y + z / 3 = 100 如果100文钱全买公鸡,最多可买100 / 5 = 20只,所以x的取值范围在0~20之间:如果100文钱全买母鸡,最多可买100 / 3 = 33只,所以y的取值范围在0~33之间:如果100文钱全买小

JS-百钱买百鸡案例-for循环制作

<html> <head> <meta charset="utf-8"/> <title></title> <script> //作业:for循环实现百钱买百鸡的问题://公鸡5元一只,母鸡3元一只,小鸡1元3只,100元要买100只鸡?有多少买法? //设:公鸡买x只,母鸡y只,小鸡n只,则,x+y+n==100(只)因为只需要买100只,最多不能超过100只.钱数上:5*x+3*y+3/n==100(元),[切