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

    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();

        }

     

    }

     

  • 相关阅读:
    实现基于C++的动态事件机制(转)
    D3D HLSL 一段代码注释
    directx加载ms3d动画模型
    几种空间分割算法研究之bsp
    IxEngine开发笔记
    使用UVAtlas技术管理贴图
    八叉树
    c#调用C++写的dll导出类,包含继承,重载等详细介绍(转载)
    给自己毕业前的一点任务
    大小端问题
  • 原文地址:https://www.cnblogs.com/yyzzkk/p/5380400.html
Copyright © 2011-2022 走看看