zoukankan      html  css  js  c++  java
  • 5.1封装

    开发环境:eclipse

    结对同伴 :30 黎文衷

    同伴博客:http://www.cnblogs.com/liwenzhong/

    程序介绍:

      1.第一阶段目标 - 把计算的功能封装成类。

      2.设计测试用例:用白盒与黑盒测试设计技术,为计算核心设计测试用例。

      3.在实验环境中(如MyEclipse集成开发环境+Junit测试框架)运行测试用例,分析测试结果,找出程序问题,给出改进前后的代码对照。

    Calculator

     1 public class Calculator {
     2 
     3     public static void main(String[] args) {
     4         int jia,jian,chen,chu,jiechen;
     5         String fengshu1,fengshu2,fengshu3,fengshu4;
     6         Zhengshu core1=new Zhengshu();
     7         core1.setJiaf(1, 1);
     8         jia=core1.getSum();
     9         System.out.println(jia);
    10         
    11         Zhengshu core2=new Zhengshu();
    12         core2.setJianf(1, 1);
    13         jian=core2.getSum();
    14         System.out.println(jian);
    15         
    16         Zhengshu core3=new Zhengshu();
    17         core3.setChengf(1, 1);
    18         chen=core3.getSum();
    19         System.out.println(chen);
    20         
    21         Zhengshu core4=new Zhengshu();
    22         core4.setChuf(1, 1);
    23         chu=core4.getSum();
    24         System.out.println(chu);
    25         
    26         Fenshu core5=new Fenshu();
    27         fengshu1=core5.answer(1, 2, 3, 4, 0);
    28         System.out.println(fengshu1);
    29         
    30         Fenshu core6=new Fenshu();
    31         fengshu2=core6.answer(1, 2, 3, 4, 1);
    32         System.out.println(fengshu2);
    33         
    34         Fenshu core7=new Fenshu();
    35         fengshu3=core7.answer(1, 2, 3, 4, 2);
    36         System.out.println(fengshu3);
    37         
    38         Fenshu core8=new Fenshu();
    39         fengshu4=core8.answer(1, 2, 3, 4, 3);
    40         System.out.println(fengshu4);
    41         
    42         Jiecheng core9=new Jiecheng(3);
    43         jiechen=core9.getJieguo();
    44         System.out.println(jiechen);
    45 
    46     }
    47 
    48 }

    整数core

     1 public class Zhengshu {
     2     int zs1,zs2,sum=1;int fh;
     3     Zhengshu(){
     4         
     5     }
     6     Zhengshu(int Zs1,int Fh,int Zs2){
     7         zs1=Zs1;
     8         fh=Fh;
     9         zs2=Zs2;
    10     }
    11     public void setJiaf(int Zs1,int Zs2){
    12         sum=Zs1+Zs2;
    13     }
    14     public void setJianf(int Zs1,int Zs2){
    15         sum=Zs1-Zs2;
    16     }
    17     public  void setChengf(int Zs1,int Zs2){
    18         sum=Zs1*Zs2;
    19     }
    20     public void setChuf(int Zs1,int Zs2){
    21         sum=Zs1/Zs2;
    22     }
    23     public String getJiaf(){
    24         return zs1+"+"+zs2;
    25     }
    26     public String getJianf(){
    27         return zs1+"-"+zs2;
    28     }
    29     public String getChengf(){
    30         return zs1+"*"+zs2;
    31     }
    32     public String getChuf(){
    33         return zs1+"/"+zs2;
    34     }
    35     public int getSum(){
    36         return sum;
    37     }
    38     public String getsum(int zs1,int zs2){
    39         return zs1+"/"+zs2;
    40     }
    41 }

    分数core

     1 import java.util.Random;
     2 
     3 
     4 public class Fenshu {
     5     private int fz,fm;//用户输入分子、分母
     6     private int fz0,fm0;//已约分正确分子、分母
     7     private int fz1=1,fm1=1;//未约分正确分子、分母
     8     private int jlfz,jlfm;//操作数
     9     private int temp,ys;//操作数
    10     private char ch;
    11     private char fh[]={'+','-','*','/'};
    12     Fenshu(){}
    13     public String suanshi(int a,int b,int c,int d,int z){
    14         if(a>b)//确保分母大于分子
    15         {
    16             temp=b;
    17             b=a;
    18             a=temp;
    19         }
    20         if(c>d)//确保分母大于分子
    21         {
    22             temp=d;
    23             d=c;
    24             c=temp;
    25         }
    26 //        z=new Random().nextInt(cc*2-1);
    27         return a+"/"+b+" "+fh[z]+" "+c+"/"+d;
    28         
    29     }
    30     public String answer(int a,int b,int c,int d,int z){
    31         if(a>b)//确保分母大于分子
    32         {
    33             temp=b;
    34             b=a;
    35             a=temp;
    36         }
    37         if(c>d)//确保分母大于分子
    38         {
    39             temp=d;
    40             d=c;
    41             c=temp;
    42         }
    43         int shu []=new int [4];
    44         shu[0]=a;
    45         shu[1]=b;
    46         shu[2]=c;
    47         shu[3]=d;
    48         switch(z)
    49         {
    50         case 0:
    51             fz1=shu[0]*shu[3]+shu[1]*shu[2];
    52             fm1=shu[1]*shu[3];
    53             break;
    54         case 1:
    55             fz1=shu[0]*shu[3]-shu[1]*shu[2];
    56             fm1=shu[1]*shu[3];
    57             break;
    58         case 2:
    59             fz1=shu[0]*shu[2];
    60             fm1=shu[1]*shu[3];
    61             break;
    62         case 3:
    63             fz1=shu[0]*shu[3];
    64             fm1=shu[1]*shu[2];
    65             break;
    66         default:
    67             break;
    68         }
    69         jlfz=fz1;//约分
    70         jlfm=fm1;
    71         while(fm1!=0)
    72         {
    73             ys=fz1%fm1;
    74             fz1=fm1;
    75             fm1=ys;
    76         }
    77         fz0=jlfz/fz1;
    78         fm0=jlfm/fz1;
    79         if(fm0<0)
    80         {
    81             fz0=fz0*-1;
    82             fm0=fm0*-1;
    83         }
    84         return fz0+"/"+fm0;
    85     }
    86 
    87 }

    阶乘core

     1 public class Jiecheng {
     2     private int jc1;
     3     private int sum=1;
     4     private int n;
     5     Jiecheng(){
     6         
     7     }
     8     Jiecheng(int jc){
     9         jc1=jc;
    10         
    11     }
    12     public int getJieguo()
    13     {
    14         if(jc1==0)
    15             sum=1;
    16         else{
    17             for(n=1;n<=jc1;n++)
    18             {
    19                 sum=sum*n;
    20             }
    21         }
    22         return sum;
    23     }
    24     public int getsum()
    25     {
    26         return sum;
    27     }
    28 }

    截图

  • 相关阅读:
    自定义的类型放入STL的set中,需要重载自定义类中的“<”符号(转)
    C++中的explicit关键字(转)
    【小米3使用经验】小米3关闭系统自动更新(升级)
    享元模式FlyweightPattern(转)
    程序员的工作环境与效率
    Windows7远程登陆访问2003很卡的解决办法
    windows7上可以正常安装的VS2010版本
    使用Visual Studio指定命令行参数
    winform配置文件的简单使用
    Java nio epoll mina
  • 原文地址:https://www.cnblogs.com/linhaixin/p/4469464.html
Copyright © 2011-2022 走看看