10.7

import java.util.Random;
import java.util.Scanner;

public class Test1 {

public static void isEqual(int num1,int num2,char c1,int number1[],int number2[],int number3[],int number4[],int number5[],int number6[],int number7[],int number8[]){//判断重复
int i,j,k;
//char[] operator=new char[]{'+','-','*','/'};
Random rand = new Random();
for(i=1;i<=30;i++) {
j=rand.nextInt(4);
//c=operator[j];
if(c1=='+') {
for(k=1;k<i;k++) {
if((num1==number1[k]&&num2==number2[k])) {
System.out.println("该题与第"+k+"道题目重复");
}
}
}
else if(c1=='-') {
for(k=1;k<i;k++) {
if((num1==number3[k]&&num2==number4[k])) {
System.out.println("该题与第"+k+"道题目重复");
}
}
}
else if(c1=='*') {
for(k=1;k<i;k++) {
if((num1==number5[k]&&num2==number6[k])||(num1==number6[k]&&num2==number5[k])) {
System.out.println("该题与第"+k+"道题目重复");
}
}
}
else if(c1=='/') {
for(k=1;k<i;k++) {
if((num1==number7[k]&&num2==number8[k])) {
System.out.println("该题与第"+k+"道题目重复");
}
}
}
}
}

public static void setParameter(int num1,int num2) {//设置参数
int j;
char c;
char[] operator=new char[]{'+','-','*','/'};
Random rand = new Random();
j=rand.nextInt(4);
c=operator[j];
if(c=='+') {
System.out.print("该道题为:");
System.out.println(num1+"+"+num2+"=");
}
else if(c=='-') {
System.out.print("该道题为:");
System.out.println(num1+"-"+num2+"=");
}
else if(c=='*') {
System.out.print("该道题为:");
System.out.println(num1+"*"+num2+"=");
}
else if(c=='/') {
System.out.print("该道题为:");
System.out.println(num1+"/"+num2+"=");
}
}
public static void cout(int n1,int n2,int n3) {//随机数生成器
int i,j,k,num1,num2,num3,num4,num5;
char c1,c2;
char[] operator=new char[]{'+','-','*','/'};
Random rand = new Random();
for(i=1;i<=n1;i++) {
j=rand.nextInt(4);
k=rand.nextInt(4);
c1=operator[j];
c2=operator[k];
if(n2==2) {//当操作数为2
do{
num1=rand.nextInt(101);
num2=rand.nextInt(101);
}while(num1==0||num2==0);
if(c1=='+') {
System.out.print("第"+i+"道题为:");
System.out.println(num1+"+"+num2+"=");
}
else if(c1=='-') {
System.out.print("第"+i+"道题为:");
System.out.println(num1+"-"+num2+"=");
}
else if(c1=='*') {
System.out.print("第"+i+"道题为:");
System.out.println(num1+"*"+num2+"=");
}
else if(c1=='/') {
System.out.print("第"+i+"道题为:");
System.out.println(num1+"/"+num2+"=");
}
}
if(n2==3) {//当操作数为3
do{
num1=rand.nextInt(n3);
num2=rand.nextInt(n3);
num3=rand.nextInt(n3);
}while(num1==0||num2==0);
if(c1=='+') {
if(c2=='+') {
System.out.print("第"+i+"道题为:");
System.out.println(num1+"+"+num2+"+"+num3+"=");
}
if(c2=='-') {
System.out.print("第"+i+"道题为:");
System.out.println(num1+"+"+num2+"-"+num3+"=");
}
if(c2=='*') {
System.out.print("第"+i+"道题为:");
System.out.println(num1+"+"+num2+"*"+num3+"=");
}
if(c2=='/') {
System.out.print("第"+i+"道题为:");
System.out.println(num1+"+"+num2+"/"+num3+"=");
}
}
else if(c1=='-') {
if(c2=='+') {
System.out.print("第"+i+"道题为:");
System.out.println(num1+"-"+num2+"+"+num3+"=");
}
if(c2=='-') {
System.out.print("第"+i+"道题为:");
System.out.println(num1+"-"+num2+"-"+num3+"=");
}
if(c2=='*') {
System.out.print("第"+i+"道题为:");
System.out.println(num1+"-"+num2+"*"+num3+"=");
}
if(c2=='/') {
System.out.print("第"+i+"道题为:");
System.out.println(num1+"-"+num2+"/"+num3+"=");
}
}
else if(c1=='*') {
if(c2=='+') {
System.out.print("第"+i+"道题为:");
System.out.println(num1+"*"+num2+"+"+num3+"=");
}
if(c2=='-') {
System.out.print("第"+i+"道题为:");
System.out.println(num1+"*"+num2+"-"+num3+"=");
}
if(c2=='*') {
System.out.print("第"+i+"道题为:");
System.out.println(num1+"*"+num2+"*"+num3+"=");
}
if(c2=='/') {
System.out.print("第"+i+"道题为:");
System.out.println(num1+"*"+num2+"/"+num3+"=");
}
}
else if(c1=='/') {
if(c2=='+') {
System.out.print("第"+i+"道题为:");
System.out.println(num1+"/"+num2+"+"+num3+"=");
}
if(c2=='-') {
System.out.print("第"+i+"道题为:");
System.out.println(num1+"/"+num2+"-"+num3+"=");
}
if(c2=='*') {
System.out.print("第"+i+"道题为:");
System.out.println(num1+"/"+num2+"*"+num3+"=");
}
if(c2=='/') {
System.out.print("第"+i+"道题为:");
System.out.println(num1+"/"+num2+"/"+num3+"=");
}
}
}
if(n2==3) {

}
}
}

public static void main(String[] args) {
int num1,num2;
int a,b;
int i,n1,n2,n3,choice;
Scanner sc=new Scanner(System.in);
//isEqual();
int number1[]=new int[100];
int number2[]=new int[100];
int number3[]=new int[100];
int number4[]=new int[100];
int number5[]=new int[100];
int number6[]=new int[100];
int number7[]=new int[100];
int number8[]=new int[100];
int j,k,l;
char c,c1;
char[] operator=new char[]{'+','-','*','/'};
Random rand = new Random();
for(i=1;i<=30;i++) {
number1[i]=0;
number2[i]=0;
j=rand.nextInt(4);
c=operator[j];
do{
num1=rand.nextInt(101);
num2=rand.nextInt(101);
number1[i]=num1;
number2[i]=num2;
}while(num1==0||num2==0);
if(c=='+') {
System.out.print("第"+i+"道题为:");
System.out.println(num1+"+"+num2+"=");
number1[i]=num1;
number2[i]=num2;
/*for(k=1;k<i;k++) {
if((num1==number1[k]&&num2==number2[k])) {
System.out.println("该题与第"+k+"道题目重复");
}
}*/
}
else if(c=='-') {
number3[i]=0;
number4[i]=0;
System.out.print("第"+i+"道题为:");
System.out.println(num1+"-"+num2+"=");
number3[i]=num1;
number4[i]=num2;
/*for(k=1;k<i;k++) {
if((num1==number3[k]&&num2==number4[k])) {
System.out.println("该题与第"+k+"道题目重复");
}
}*/
}
else if(c=='*') {
number5[i]=0;
number6[i]=0;
System.out.print("第"+i+"道题为:");
System.out.println(num1+"*"+num2+"=");
number5[i]=num1;
number6[i]=num2;
/*for(k=1;k<i;k++) {
if((num1==number5[k]&&num2==number6[k])||(num1==number6[k]&&num2==number5[k])) {
System.out.println("该题与第"+k+"道题目重复");
}
}*/
}
else if(c=='/') {
number7[i]=0;
number8[i]=0;
System.out.print("第"+i+"道题为:");
System.out.println(num1+"/"+num2+"=");
number7[i]=num1;
number8[i]=num2;
/*for(k=1;k<i;k++) {
if((num1==number7[k]&&num2==number8[k])) {
System.out.println("该题与第"+k+"道题目重复");
}
}*/
}

}
System.out.println("自定义参数请输入1,否则输入0");
choice=sc.nextInt();
if(choice==1) {
for(i=1;i<=4;i++) {
System.out.println("请输入num1:");
num1=sc.nextInt();
System.out.println("请输入num2:");
num2=sc.nextInt();
setParameter(num1,num2);
}
}
System.out.println("判断重复,请依次输入操作数1、操作符、操作数2:");
a=sc.nextInt();
c1= new java.util.Scanner(System.in).next().charAt(0);
b=sc.nextInt();
isEqual(a,b,c1,number1, number2, number3, number4, number5, number6, number7, number8);
System.out.println("请输入出题个数:");
n1=sc.nextInt();
System.out.println("请输入操作数个数(小于3):");
n2=sc.nextInt();
System.out.println("请输入操作数取值范围:");
n3=sc.nextInt();
cout(n1,n2,n3);
}

}

posted @ 2020-10-07 21:02  xjspyx  阅读(117)  评论(0编辑  收藏  举报