用java计算4/3,(java) 四则运算(三)

importjava.util.Scanner;public classoperations3 {public static int SIZE(int size)//定制数量

{ints;

s=size;returns;

}public static int MultiplyDivide(String p1)//是否有乘除法

{int m = 4;if(p1.equals("Y")){m=4;}if(p1.equals("N")){m=2;}returnm;

}public static String Negative(String p2)//加减有无负数

{

String n;

n=p2;returnn;

}public static String Remainder(String p3)//除法有无余数

{

String r;

r=p3;returnr;

}public static int Max(int max)//最大数

{intm;

m=max;returnm;

}public static int Min(int min)//最小数

{intm;

m=min;returnm;

}public static String Compare(int nup1,int ndown1,int nup2,int ndown2,int mid)//答案

{

String n=newString();int nup3=1,ndown3=1;if(ndown1==-99999)

{

ndown1=1;

}if(ndown2==-99999)

{

ndown2=1;

}if(mid==0)//加

{

ndown3=ndown1*ndown2;

nup3=nup1*ndown2+nup2*ndown1;

}if(mid==1)//减

{

ndown3=ndown1*ndown2;

nup3=nup1*ndown2-nup2*ndown1;

}if(mid==2)//乘

{

ndown3=ndown1*ndown2;

nup3=nup1*nup2;

}if(mid==3)//除

{int nd=nup2;

nup2=ndown2;

ndown2=nd;

ndown3=ndown1*ndown2;

nup3=nup1*nup2;

}//化简

int z1=Math.abs(nup3),z2=Math.abs(ndown3);int chushu=2;if(z1>z2)

{while(z2>=chushu)

{if(z1%chushu==0&&z2%chushu==0)

{z1=z1/chushu;z2=z2/chushu;}else{chushu++;}

}

}else if(z1

{while(z1>=chushu)

{if(z1%chushu==0&&z2%chushu==0)

{z1=z1/chushu;z2=z2/chushu;}else{chushu++;}

}

}else{

z1=1;z2=1;

};if(nup3<0){nup3=0-z1;}else {nup3=z1;}if(ndown3<0){ndown3=0-z2;}else {ndown3=z2;}//化简

if(ndown3==1)

{

n=nup3+"";

}else if(ndown3==-1)

{

nup3=0-nup3;

n=nup3+"";

}else{if((nup3<0&&ndown3<0)||(nup3>0&&ndown3<0))

{

nup3=0-nup3;

ndown3=0-ndown3;

}

n=nup3+"/"+ndown3+"";

}returnn;

}public static void Work(int MultiplyDivide,String Negative,String Remainder,int Max,int Min,int SIZE)//算式计算

{

String Again[][]=new String[SIZE][1];//用数组装算式,用以判断是否重复

int Count1=0;//计数正确

int Count2=0;//计数错误

for(int i=0;i

{int cha=Max-Min;int mid,nup1 =1,ndown1=1,nup2=1,ndown2=1;

String s1=newString();

String s2=newString();

String suanshi=newString();

String fuhao=new String();//符号判定

mid=(int)(Math.random()*MultiplyDivide);if(mid==0) fuhao="+";if(mid==1) fuhao="-";if(mid==2) fuhao="*";if(mid==3) fuhao="/";for(int j=0;j<2;j++)//两次循环,第一次为第一个数字,第二次为第二个数字

{int n1 =-99999,n2=-99999;//用于后面是否为分数的判定

int s=(int)(Math.random()*2);//随机数判定整数或分数,0->整数,1->分数

if(s==0)//整数

{if(Negative.equals("N"))

{if(mid==0||mid==1)

{while(n1<0)

{n1=(int)(Min+Math.random()*(cha+1));}

}else{

n1=(int)(Min+Math.random()*(cha+1));

}

}if(Negative.equals("Y"))

{n1=(int)(Min+Math.random()*(cha+1));}

}if(s==1)//分数

{

n1=(int)(Min+Math.random()*(cha+1));

n2=(int)(Min+Math.random()*(cha+1));if(Negative.equals("N"))

{if(mid==0||mid==1)

{while(n1<=0||n2<=0)

{

n1=(int)(Min+Math.random()*(cha+1));

n2=(int)(Min+Math.random()*(cha+1));

}

}else{while(n1==0||n2==0)

{

n1=(int)(Min+Math.random()*(cha+1));

n2=(int)(Min+Math.random()*(cha+1));

}

}

}if(Negative.equals("Y"))

{while(n1==0||n2==0)

{

n1=(int)(Min+Math.random()*(cha+1));

n2=(int)(Min+Math.random()*(cha+1));

}

}int z1=Math.abs(n1),z2=Math.abs(n2);int chushu=2;if(z1>z2)

{while(z2>=chushu)

{if(z1%chushu==0&&z2%chushu==0)

{z1=z1/chushu;z2=z2/chushu;}else{chushu++;}

}

}else if(z1

{while(z1>=chushu)

{if(z1%chushu==0&&z2%chushu==0)

{z1=z1/chushu;z2=z2/chushu;}else{chushu++;}

}

}else{

z1=1;z2=1;

};if(n1<0){n1=0-z1;}else {n1=z1;}if(n2<0){n2=0-z2;}else {n2=z2;}

}if(j==0)//第一个数字

{

nup1=n1;ndown1=n2;if(ndown1==-1&&nup1<0)

{nup1=Math.abs(nup1);}if(ndown1==-1&&nup1>0)

{nup1=0-nup1;}if(ndown1>-99999)//如果存在分母,则为分数

{if(Math.abs(ndown1)!=1)

{if(nup1<0&&ndown1<0)

{nup1=Math.abs(nup1);ndown1=Math.abs(ndown1);}if(ndown1<0)

{s1="("+nup1+"/("+ndown1+"))"+"";}else{s1="("+nup1+"/"+ndown1+")"+"";}

}if(Math.abs(ndown1)==1)//否则为整数

{if(nup1>=0)

{s1=nup1+"";}if(nup1<0)

{s1="("+nup1+")"+"";}

}

}else//否则为整数

{if(nup1>=0)

{s1=nup1+"";}if(nup1<0)

{s1="("+nup1+")"+"";}

}

}if(j==1)//第二个数字

{

nup2=n1;ndown2=n2;if(mid==3)//当为除法时,除数不能为0,

{while(nup2==0)

{nup2=(int)(Min+Math.random()*(cha+1));}//分子或整数不能为0

}if(ndown2==-1&&nup2<0)

{nup2=Math.abs(nup2);}if(ndown2==-1&&nup2>0)

{nup2=0-nup2;}if(ndown2>-99999)//如果存在分母,则为分数

{if(Math.abs(ndown2)!=1)

{if(nup2<0&&ndown2<0)

{nup2=Math.abs(nup2);ndown2=Math.abs(ndown2);}if(ndown2<0)

{s2="("+nup2+"/("+ndown2+"))"+"";}else{s2="("+nup2+"/"+ndown2+")"+"";}

}else{if(nup2<0)

{

s2="("+nup2+")"+"";

}if(nup2>0)

{

s2=nup2+"";

}

}

}else//否则为整数

{if(nup2<0)

{

s2="("+nup2+")"+"";

}if(nup2>0)

{

s2=nup2+"";

}

}if(mid==3&&Remainder.equals("N"))

{

nup1=nup2*n1;ndown1=ndown2;if(ndown1%n1==0)

{ndown1=ndown1/n1;nup1=nup1/n1;}if(ndown1>-99999)//如果存在分母,则为分数

{if(Math.abs(ndown1)!=1)

{s1="("+nup1+"/"+ndown1+")"+"";}else//否则为整数

{

s1=nup1+"";

}

}else//否则为整数

{

s1=nup1+"";

}

}

}

}

suanshi=suanshi+s1+fuhao+s2+"=";//算式

Again[i][0]=suanshi;for(int k=0;k

{if(Again[i][0].equals(Again[k][0])){k--;break;}

}

System.out.print(suanshi);

String Daan=Compare(nup1,ndown1,nup2,ndown2,mid);

Scanner Shuru=newScanner(System.in);

String Answer=Shuru.next();if(Answer.equals(Daan))

{

System.out.println("正确");

Count1++;

}else{

System.out.println("错误,正确答案为:"+Daan);

Count2++;

}

}

System.out.println("一共"+SIZE+"道题,其中正确:"+Count1+"道,错误:"+Count2+"道");

}public static voidmain(String args[])

{

String p3="Y";

Scanner pan=newScanner(System.in);

System.out.println("请输入定制数量:");int size=pan.nextInt();

System.out.println("是否有乘除法,Y--有,N--没有");

String p1=pan.next();

System.out.println("加减有无负数,Y--有,N--没有");

String p2=pan.next();if(p1.equals("Y"))

{

System.out.println("除法有无余数,Y--有,N--没有");

p3=pan.next();

}

System.out.println("请输入数值范围最大值:");int max=pan.nextInt();

System.out.println("请输入数值范围最小值:");int min=pan.nextInt();int zhi=SIZE(size);int a=MultiplyDivide(p1) ;

String b=Negative(p2);

String c=Remainder(p3);int d=Max(max);int e=Min(min);

Work(a,b,c,d,e,zhi);

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ava实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),可运行高分资源 Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值