用Java写假设商店货品价格皆不大于100元(且为整数),若顾客付款再100元内,求找给顾客最少货币个(张)数?(货币面值50元10元,5元,1元四种)
时间: 2023-08-31 16:25:26 浏览: 135
### 回答1:
您好,我可以回答您的问题。以下是用Java编写的解决方案:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int price = scanner.nextInt();
int change = 100 - price;
int[] coins = {50, 10, 5, 1};
int count = 0;
for (int i = 0; i < coins.length; i++) {
count += change / coins[i];
change %= coins[i];
}
System.out.println(count);
}
}
```
以上代码可以计算出找给顾客最少货币个数。如果顾客付款不超过100元,程序会计算出需要找给顾客的最少货币个数。程序中使用了一个数组来存储货币面值,然后通过循环计算出需要找给顾客的每种货币的个数,最后将所有货币个数相加即可得到最终结果。
希望这个解决方案能够帮到您。
### 回答2:
首先,我们可以先将顾客付款与商品总价之差作为剩余金额。
接下来,我们要找出最少货币个数,可以采用贪心算法来解决。
首先,我们判断剩余金额是否大于等于50元,如果是,则找给顾客1张50元面值的货币,并将剩余金额减去50元;
然后,判断剩余金额是否大于等于10元,如果是,则找给顾客1张10元面值的货币,并将剩余金额减去10元;
然后,判断剩余金额是否大于等于5元,如果是,则找给顾客1张5元面值的货币,并将剩余金额减去5元;
最后,判断剩余金额是否大于等于1元,如果是,则找给顾客剩余金额个数的1元面值的货币。
通过以上步骤,即可找出最少货币个数。
### 回答3:
解决这个问题可以使用贪心算法。
具体的步骤如下:
1. 判断顾客付款金额与货品价格之差 diff = 100 - 货品价格,这个 diff 表示顾客需要找给顾客的金额。
2. 初始化4种货币面值的张数分别为50元张数、10元张数、5元张数、1元张数均为0。
3. 如果 diff 大于等于50,则从50元硬币开始找零,即 diff = diff - 50,同时50元张数加1。重复这一步骤,直到 diff 小于50。
4. 如果 diff 大于等于10,则从10元硬币开始找零,即 diff = diff - 10,同时10元张数加1。重复这一步骤,直到 diff 小于10。
5. 如果 diff 大于等于5,则从5元硬币开始找零,即 diff = diff - 5,同时5元张数加1。重复这一步骤,直到 diff 小于5。
6. 如果 diff 大于等于1,则从1元硬币开始找零,即 diff = diff - 1,同时1元张数加1。重复这一步骤,直到 diff 小于1。
7. 最终结果为50元张数、10元张数、5元张数、1元张数的总和即为最少的货币张数。
通过这种方法,就可以求得找给顾客最少货币张数的解。注意,这个算法的前提是顾客付款金额不大于100元且为整数,且货品价格也不大于100元且为整数。如果超过了这个限制条件,可能会得到错误的结果。
相关推荐
![txt](https://img-home.csdnimg.cn/images/20210720083642.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)