大成子Cheng 2017-06-03 13:17 采纳率: 100%
浏览 2545
已采纳

软件测试技术--付款找零问题

    求助大神,小弟的期末作业。因为平时没怎么去上课,加上期末其他各科也要交作品,没时间再去学了。
    拜托拜托!!(^人^)

# 要求:

付款找零问题
假设商店货品价格(R) 都不大于100元(且为整数),若顾客付款(P)在100元内,现有一个程序能在每位顾客付款后给出找零钱的最佳组合(找给顾客货币张数最少)。 假定此商店的货币面值只包括:50元(N50)、10元(N10)、 5元(N5)、1元(N1) 四种。

一.程序设计采用结构化和面向对象的程序设计思想(10分)

二.采用黑盒测试技术设计测试用例(25分)

1. 边界值测试

(1) 边界值分析

(2) 边界值测试用例表

2. 等价类测试

(1) 等价类划分分析

(2) 等价类测试用例表

3. 基于决策表的测试

(1) 决策表测试分析

(2) 基于决策表的测试用例表

三.采用白盒测试技术设计测试用例(25分)

1. 静态白盒测试

2. 对判断的测试

(1) 在六种选取1种判定测试覆盖指标进行分析

(2) 测试用例表

3. 对路径的测试

(1) 程序图

(2) 环复杂度

(3) 独立路径的抽取

(4) 不可行路径的处理

(5) 测试用例表

4. 对循环的测试

5. 对变量的测试

四.单元测试(20分)

1.驱动模块与桩模块的开发

(1)读入一批测试用例,对每个测试用例能够读入基本信息并显示出来

(2)利用测试用例来驱动(调用)被测试函数

(3)显示测试用例的实际输出并能与预期输出进行比较,给出判定结果

## 需要符合书上的要求

大概这样:
3. 黑盒测试技术测试用例设计
(1) 边界值测试
Ⅰ.边界值分析: 基本思想:使用输入的最小值,略高于最小值,正常值,略低于最大值,最大值;所以R,P的边界值为0,1,2,50,99,100,101,
Ⅱ.边界值测试用例表:测试用例数:3*4+1=13个
测试用例编号 输入数据 预期输出 测试结果

                  R P       
NO.1               0    100     Beyond 1-100        Beyond 1-100

······

NO.13             100   101   Beyond 1-100      Beyond 1-100

# 我写了代码

    int R, P, N;
    Scanner input = new Scanner(System.in);
    System.out.println("Please input Price & Pay:");
    String a = input.next();
    String b = input.next();
    // 判断输入是否数字
    if (a.matches("\\d+") && b.matches("\\d+")) {
        R = Integer.parseInt(a);
        P = Integer.parseInt(b);
        //判断是否在输入范围
        if(R>0&&R<=100&&P>0&&P<=100){
            int Num50,Num10,Num5,Num1;
            N=P-R;
            if(N>=0){
                Num50=N/50;
                N=N-50*Num50;
                Num10=N/10;
                N=N-10*Num10;
                Num5=N/5;
                N=N-5*Num5;
                Num1=N;
                if(Num50==0 && Num10==0 && Num5==0 && Num1==0){
                    System.out.println("No Change");
                }else{
                    System.out.println("Change¥50:sheets "+Num50);
                    System.out.println("Change¥10:sheets "+Num10);
                    System.out.println("Change¥05:sheets "+Num5);
                    System.out.println("Change¥01:sheets "+Num1);
                    }
            }else{
                System.out.println("Pay isn't enough!");
            }
        }else{
            System.out.println("Beyond 1-100");
        }
    } else {
        System.out.println("Confirm integer!");
    }
}

  • 写回答

2条回答 默认 最新

  • 大成子Cheng 2017-06-03 13:31
    关注

    联系扣扣:973624194

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!
  • ¥15 drone 推送镜像时候 purge: true 推送完毕后没有删除对应的镜像,手动拷贝到服务器执行结果正确在样才能让指令自动执行成功删除对应镜像,如何解决?
  • ¥15 求daily translation(DT)偏差订正方法的代码
  • ¥15 js调用html页面需要隐藏某个按钮