找零钱最佳组合 题目:假设商店货品价格(R)皆不大于100元(且为整数),若顾客付款在100元内(P),求找给顾客的最少货币个(张)数?(货币面值50元,10元,5元,1元四种)用等价类划分法设计测试用例,画出表格
时间: 2024-01-13 19:05:15 浏览: 144
根据题目,可以将输入值划分为以下等价类:
1. P小于R,即不需要找零钱。
2. P等于R。
3. P大于R,但是找零钱的面值组合中不包含50元纸币。
4. P大于R,但是找零钱的面值组合中包含50元纸币,但不包含10元纸币。
5. P大于R,但是找零钱的面值组合中包含50元和10元纸币,但不包含5元硬币。
6. P大于R,但是找零钱的面值组合中包含50元、10元和5元,但不包含1元硬币。
7. P大于R,同时找零钱的面值组合中包含50元、10元、5元和1元硬币。
根据以上等价类,可以设计出以下测试用例表格:
| 测试编号 | P | R | 期望输出 |
| -------- | ----- | ---- | -------- |
| 1 | 0 | 10 | 0 |
| 2 | 10 | 10 | 0 |
| 3 | 20 | 10 | 1 |
| 4 | 50 | 10 | 2 |
| 5 | 55 | 10 | 3 |
| 6 | 57 | 10 | 3 |
| 7 | 63 | 10 | 4 |
| 8 | 5 | 10 | 0 |
| 9 | 50 | 50 | 0 |
| 10 | 50 | 55 | 1 |
| 11 | 50 | 57 | 2 |
| 12 | 50 | 63 | 3 |
| 13 | 50 | 75 | 5 |
| 14 | 90 | 75 | 3 |
| 15 | 100 | 75 | 5 |
| 16 | 55 | 50 | 1 |
| 17 | 57 | 50 | 2 |
| 18 | 63 | 50 | 3 |
| 19 | 75 | 50 | 5 |
| 20 | 90 | 50 | 8 |
| 21 | 100 | 50 | 10 |
| 22 | 57 | 55 | 1 |
| 23 | 63 | 55 | 2 |
| 24 | 75 | 55 | 4 |
| 25 | 90 | 55 | 7 |
| 26 | 100 | 55 | 9 |
| 27 | 63 | 57 | 1 |
| 28 | 75 | 57 | 3 |
| 29 | 90 | 57 | 6 |
| 30 | 100 | 57 | 8 |
| 31 | 75 | 63 | 1 |
| 32 | 90 | 63 | 4 |
| 33 | 100 | 63 | 6 |
| 34 | 90 | 75 | 1 |
| 35 | 100 | 75 | 3 |
| 36 | 100 | 100 | 0 |
以上测试用例可以覆盖所有可能的输入值,确保程序在各种情况下的正确性。
阅读全文