Java教程

Java学习

本文主要是介绍Java学习,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

今天敲代码

流景 2021/9/24 23:35:48
package sizeyunsuan;
import java.math.*;
import java.util.Scanner;
public class yunsuan {
    public static void chongfu(String[] d,int gs,int i) {
        int n=0;
        if(i>1)
        {
            for(int s=0;s<i;s++)
            {
                    if(d[i].equals(d[s]))n=1;
                }
                    
                    }
        if(n==1)
        {
            i--;
        }
    }
    public static String[] suijishu(int num,int gs,int fr,int i) {//出题个数,操作数个数,操作数取值范围
        String[] k=new String[1000];
        int[] a=new int[1000];
        String[] d=new String[1000];
            int n=0;
            int f=0;
            int q=0;
            for(f=0;f<gs;f++) {
            a[f]=(int)(Math.random()*fr);
            k[f]=String.valueOf(a[f]);
            }
            for(f=1;f<gs;f++)
            {
                d[0]=k[0];
                d[i]=d[0]+k[f];
            }
            chongfu(d,gs,i);
        return k;}

流景 2021/9/24 23:36:09
public static void main(String[] args) {
            // TODO Auto-generated method stub
            //random()返回值是一个伪随机数,该数是带正号的double值,在[0.0,1.0]的范围内正态分布
             System.out.println("请输入题的个数");
            Scanner sc = new Scanner(System.in);
             int num = sc.nextInt();
             System.out.println("请输入操作数的个数");
             int gs=sc.nextInt();
             System.out.println("请输入范围");
             int fw=sc.nextInt();
             System.out.println("是否需要括号,输入1为需要,0为不需要,如果操作数为2请直接输入0");
             int kh=sc.nextInt();
             System.out.println("是否需要乘除法,输入1为需要,0为不需要");
             int cc=sc.nextInt();
             int[] a=new int[10000];
             int[] b=new int[10000];
             char uo,xx;
             uo='(';
             xx=')';
             String co=String.valueOf(uo);
             String mo=String.valueOf(xx);
             String[] c=new String[10000];
             String[] d=new String[10000];
             String[] e=new String[10000];
             String[] g=new String[10000];
             for(int i=0;i<num;i++) {
            c=suijishu(num,gs,fw,i);
            if(kh==0&&cc==1) {//无括号有乘除
                char[] fuhao=new char[100];
                char m='*';
                String iu=String.valueOf(m);
                for(int xu=0;xu<gs-1;xu++) {
                int sj=(int)(Math.random()*4);
                switch(sj)
                {
                case 1:fuhao[xu]='+';e[xu]=String.valueOf(fuhao[xu]);break;
                case 2:fuhao[xu]='-';e[xu]=String.valueOf(fuhao[xu]);break;
                case 3:fuhao[xu]='*';e[xu]=String.valueOf(fuhao[xu]);break;
                case 0:fuhao[xu]='/';e[xu]=String.valueOf(fuhao[xu]);break;
                }
            }
                for( int q=0,f=0;f<2*gs-1;f++) {
                     
                    if(f==0) {g[0]=c[0];}
                    else if(f%2==1) {g[0]=g[0]+e[q];q++;}
                    else if(f==2) {g[0]=g[0]+c[f-1];}
                    else if(f!=2&&f%2==0) {g[0]=g[0]+c[f/2];}
                }
                System.out.println(g[0]+"=");
            }
            if(kh==1&&cc==1) {//有括号,有乘除
                char[] fuhao=new char[100];
                char m='*';
                String iu=String.valueOf(m);
                for(int xu=0;xu<gs-1;xu++) {
                int sj=(int)(Math.random()*4);
                switch(sj)
                {
                case 1:fuhao[xu]='+';e[xu]=String.valueOf(fuhao[xu]);break;
                case 2:fuhao[xu]='-';e[xu]=String.valueOf(fuhao[xu]);break;
                case 3:fuhao[xu]='*';e[xu]=String.valueOf(fuhao[xu]);break;
                case 0:fuhao[xu]='/';e[xu]=String.valueOf(fuhao[xu]);break;
                }
            }
                int t=gs;
                int uu=(int)(Math.random()*(t-2)+2);
                for( int q=0,f=0;f<2*gs-1;f++) {
         
                    if(f==0) {g[0]=co+c[0];}
                    else if(f%2==1) {
                        {g[0]=g[0]+e[q];q++;}}
                    else if(f%2==0) {
                        if(f==uu&&uu%2==0)
                        {g[0]=g[0]+c[f/2]+mo;}
                        else if(f==(uu+1)&&uu%2==1){g[0]=g[0]+c[f/2]+mo;}
                        else {g[0]=g[0]+c[f/2];}
                }
                }
                System.out.println(g[0]+"=");
            }
            if(kh==1&&cc==0) {//有括号,无乘除
                char[] fuhao=new char[100];
                char m='*';
                String iu=String.valueOf(m);
                for(int xu=0;xu<gs-1;xu++) {
                int sj=(int)(Math.random()*2);
                switch(sj)
                {
                case 1:fuhao[xu]='+';e[xu]=String.valueOf(fuhao[xu]);break;
                case 0:fuhao[xu]='-';e[xu]=String.valueOf(fuhao[xu]);break;
                
                }
            }
                int t=gs;
                int uu=(int)(Math.random()*(t-2)+2);
                for( int q=0,f=0;f<2*gs-1;f++) {
         
                    if(f==0) {g[0]=co+c[0];}
                    else if(f%2==1) {
                        {g[0]=g[0]+e[q];q++;}}
                    else if(f%2==0) {
                        if(f==uu&&uu%2==0)
                        {g[0]=g[0]+c[f/2]+mo;}
                        else if(f==(uu+1)&&uu%2==1){g[0]=g[0]+c[f/2]+mo;}
                        else {g[0]=g[0]+c[f/2];}
                }
                }
                System.out.println(g[0]+"=");
            }
            if(kh==0&&cc==0) {
                char[] fuhao=new char[100];
                char m='*';
                String iu=String.valueOf(m);
                for(int xu=0;xu<gs-1;xu++) {
                int sj=(int)(Math.random()*2);
                switch(sj)
                {
                case 1:fuhao[xu]='+';e[xu]=String.valueOf(fuhao[xu]);break;
                case 0:fuhao[xu]='-';e[xu]=String.valueOf(fuhao[xu]);break;
                }
            }
                for(int q=0,f=0;f<2*gs-1;f++) {
         
                    if(f==0) {g[0]=c[0];}
                    else if(f%2==1) {g[0]=g[0]+e[q];q++;}
                    else if(f%2==0) {g[0]=g[0]+c[f/2];}
                }
                System.out.println(g[0]+"=");
            }
            
            }
        }}

 

这篇关于Java学习的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!