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

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

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

# 要求:

付款找零问题
假设商店货品价格(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条)

报告相同问题?

悬赏问题

  • ¥20 机器学习能否像多层线性模型一样处理嵌套数据
  • ¥20 西门子S7-Graph,S7-300,梯形图
  • ¥50 用易语言http 访问不了网页
  • ¥50 safari浏览器fetch提交数据后数据丢失问题
  • ¥15 matlab不知道怎么改,求解答!!
  • ¥15 永磁直线电机的电流环pi调不出来
  • ¥15 用stata实现聚类的代码
  • ¥15 请问paddlehub能支持移动端开发吗?在Android studio上该如何部署?
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效