zoukankan      html  css  js  c++  java
  • 实验三

    1、 计算整数X和整数Y的最大公约数。

    l  请用类和方法(写一个求最大公约数的方法)实现,命名时请按照规范命名。

    l  在main方式中获取用户输入的两个整数,调用之前写的方法,输出它们的最大公约数。

    l  利用FindBugs查找程序中是否存在bug。

    Demo类

    package cn.yu.test;

     

    public class Demo {

     

        /**

         * @param args

         */

        public static void main(String[] args) {

           // TODO Auto-generated method stub

               Method m =new Method();

               m.index();

        }

     

    }

    Method

    package cn.yu.test;

     

    public class Method {

        public void index(){

        int n=24,t=60;

        int min =Math.min(n, t);

        for(int k=min;k>0;k--){

           if(n%k==0 && t%k==0){

           System.out.println(n+"和"+t+"的最大公约数为:"+k);

           return;

        }

    }}

    }

    2、 逻辑覆盖的应用

    l  按照所给的程序流程图,写出Java代码(用类和方法实现)

    l  写出语句覆盖、分支覆盖的测试用例,以及它所覆盖的路径,用JUnit编写测试用例进行测试

    l  测试用例(语句覆盖):

    x

    y

    结果

    路径

    3

    2

    Y+1=3 x=3

    abd

    3

    1

    不变

    abc

    6

    -1

    x-y=7

    aeg

    4

    -1

    X+y=3

    aef

    l  测试用例(分支覆盖):

    X<4 or y>0

    x>5

    Y>1

    用例

    结果

    路径

    T

    F

    X=3,y=1

    不变

    abc

    T

    T

    X=3,y=2

    Y+1=3 x=3

    adb

    F

    F

    X=6,y=-1

    x-y=7

    aeg

    F

    T

    X=4,y=-1

    X+y=3

    aef

     

     

     

    代码

    package cn.yu.test;

    public class Methods {

           public void indexs(){

               int x = 5,y = 6;

               if(x<4 || y>0){

                  if(y>1){

                      y=y+1;

                      System.out.println("x结果是:"+x);

                      System.out.println("y+1结果是:"+y);

                  }

                  else{

                      System.out.println("x结果是:"+x);

                      System.out.println("y结果是:"+y);

                  }

               }

               else{

                  if(x>=5){

                      x=x-y;

                      System.out.println("x-y结果是:"+x);

                  }

                  else{

                      x=x+y;

                      System.out.println("x+y结果是:"+x);

                  }

               }

              

           }

    }

    package cn.yu.test;

     

    public class Demo {

     

        /**

         * @param args

         */

        public static void main(String[] args) {

           // TODO Auto-generated method stub

               Methods m =new Methods();

               m.indexs();

        }

     

    }

  • 相关阅读:
    [NOI2012] 美食节
    [NOI2008] 志愿者招募
    P3834 【模板】可持久化线段树 2(主席树)
    P3919 【模板】可持久化线段树 1(可持久化数组)
    P4168 [Violet]蒲公英
    轻重链剖分
    沉舟侧畔千帆过 病树前头万木春
    P2119 魔法阵 (0.1s 虐杀过程)
    两行虐杀儒略历
    CSP2020 S-2 爆零(日)记 (已完结)
  • 原文地址:https://www.cnblogs.com/linjing/p/5516668.html
Copyright © 2011-2022 走看看