Github+阿超运算

感谢自己寒假能够稍稍做一点努力。

Github个人页面<构建之法阅读笔记二可见>:

https://github.com/Heartxy8990

申请教程:

http://jingyan.baidu.com/article/0a52e3f4c34347bf62ed72a5.html

 

阿超的运算<阅读笔记一可见>:

 

//桃子之——阿超的四则运算
/*要求:
 1.随机产生50个四则预算,包括整数和真分数
 2.要求不重复
 */
package bb;
import java.util.Random;
import java.util.Scanner;
import java.util.Vector;

//阿超的运算程序
public class Cc {
public static void main(String args[]){
    Scanner sc=new Scanner(System.in);
    Random ne=new Random();
    Vector vet=new Vector();
    
    for(int i=1;i<=50;i++){//50题 每题的要求在for循环里判断
        boolean flag=false;//判断当真分数时进行循环
        String jg=" ";int a = 0,b=0,c=0,d=0,e=0,f=0;char h='-';//初始化随机数
        while(flag==false)
        {
            a=ne.nextInt(301);
            b=ne.nextInt(301);
            c=ne.nextInt(301);
            d=ne.nextInt(301);
            e=ne.nextInt(301);

            f=ne.nextInt(301);
            if(a<b&&c<d){
            flag=true;
            Object[] obj = new Object[4];//混合数组        {整数,整数,真分数,真分数}
            obj[0]=e;
            obj[1]=f;
            obj[2]=a+"/"+b;
            obj[3]=c+"/"+d;
            int objcd1=ne.nextInt(obj.length);
            Object m=obj[objcd1];String str1=m.toString(); 
            int objcd2=ne.nextInt(obj.length);//获取混合数组的一个元素
            Object n=obj[objcd2];String str2=n.toString(); 
            
            char[] fh={'+','-','*','/'};//符号数组
            int ysfh=ne.nextInt(fh.length);
            h=fh[ysfh];
            
            //查重
            jg=str1+" "+h+" "+str2+" "+"=";
            for(int j=0;j<vet.size();j++){
                if(vet.get(j).equals(jg))
                    flag=false;
                
                else vet.add(jg);
            }
            
            if(flag==true)
            System.out.println(str1+" "+h+" "+str2+" "+"=");
            }
        }
    }
}
} 


以上是暑假做的,只能实现选择题目数量,随机出整数,真分数,不重复。

 

前天写了一个程序,添加有无乘除,有无真分数,真分数题目数,选择打印方式。但是目前不能调用函数,问提可能是出在vector上了:

package 阿超超;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.PrintStream;
import java.util.Random;
import java.util.Scanner;
import java.util.Vector;
public class Achao {
            static Scanner sc=new Scanner(System.in);
            static Random ne=new Random();
            static Vector<String> vet=new Vector<String>();
            static boolean cf=false;
            static int i;
            static String jp;
            static String jg;
            static String str1,str2,str3;
            int cho;
        public static void main(String[] args)
        {  
               try{
                System.out.println("用户您好,请对该次出题做出要求");
                //char cho='A';
                System.out.println("出题数目N(正整数)");
                int N=sc.nextInt();
                System.out.println("输入运算范围fw?(1~fw,正整数?)");
                int fw=sc.nextInt();
                System.out.println("是否有乘除cc(有1,无0)");
                int cc=sc.nextInt();
                System.out.println("是否有真分数zf(有1,无0)");
                int zf=sc.nextInt();
                
                
                //只有加减无真分数
                if(cc==0&&zf==0)
                    cc0(N,fw);
                //有乘除有真分数
                else if(cc==0&&zf==1)
                    cc1(N,fw);
                //有乘除,无真分数
                else if(cc==1&&zf==0)
                zf0(N,fw);
                //有乘除,有真分数
                else if(cc==1&&zf==1)
                {
                    System.out.println("含有真分数的题目数量zfn(0<zfn<=N)");
                    int zfn=sc.nextInt();
                    zf1(N,fw,zfn);
                }
                //System.out.println("是否有括号(有1,无0)");
                //有无负数
                //打印选择
            
                   
               }//try
                catch(Exception e)
               {System.out.println("输入格式有误");}    
            
            }//main
    
        
        
        
        public static void cc0(int NN,int fww) throws FileNotFoundException
        {
            //boolean cf1=false;
                for(i=1;i<=NN;i++)
                {
                while(cf==false)//不重复
                {
                    char[] fh={'+','-'};//符号数组
                    int ysfh=ne.nextInt(fh.length);
                    char h=fh[ysfh];
                    
                    int a=ne.nextInt(fww+1);
                    int b=ne.nextInt(fww+1);
                    jg=a+" "+h+" "+b+" "+"=";
                    int size = vet.size();
                    for(int j=0;j<size;j++)
                    {
                        if(vet.get(j).equals(jg))
                            cf=false;
                        else
                        {
                            //vet.addElement(jg);
                            vet.add(jg);//在末尾加入字符串?而不是对象?
                            
                            cf=true;
                        }
                    }//查重完毕
                }//while
                }//for 出题
                
                System.out.println("出题完成,请选择  1打印    0预览");
                int cho=sc.nextInt();
                if (cho==1)
                {
                    for(int pt=1;pt<=vet.size();pt++)
                    {
                        System.out.print(vet.get(pt)+"     ");
                        if(pt%5==0)System.out.println(" ");
                    }
                }//打印
                
                else if(cho==0)
                {
                    System.out.println("默认地址 E://阿超//a.txt");
                    FileOutputStream  fl=new FileOutputStream(new File("E://阿超//a.txt"));
                    PrintStream p= new PrintStream(fl);
                    
                    for(int pt=1;pt<=vet.size();pt++)
                    {
                        p.print(vet.get(pt)+"     ");
                        if(pt%5==0)
                            p.println(" ");
                    }
                    p.close();
                }//预览
        }            
            
        public static void cc1(int NN,int fww) throws FileNotFoundException
        {
            for(i=1;i<=NN;i++)
            {
                boolean zfs=false;//真分数成立
                while(cf==false)//查重
                {
                    char[] fh={'+','-','*','/'};//符号数组
                    int ysfh=ne.nextInt(fh.length);
                    char h=fh[ysfh];
                    while(zfs==false)
                    {
                        int a=ne.nextInt(fww+1);
                        int b=ne.nextInt(fww+1);
                        int c=ne.nextInt(fww+1);
                        int d=ne.nextInt(fww+1);
                        int e=ne.nextInt(fww+1);
                        int f=ne.nextInt(fww+1);
                        
                        if(a<b&&c<d)
                        {
                            zfs=true;
                            Object[] obj = new Object[4];//混合数组        {整数,整数,真分数,真分数}
                            obj[0]=e;
                            obj[1]=f;
                            obj[2]=a+"/"+b;
                            obj[3]=c+"/"+d;
                            int objcd1=ne.nextInt(obj.length);
                            Object m=obj[objcd1];
                            str1=m.toString(); 
                            
                            int objcd2=ne.nextInt(obj.length);//获取混合数组的一个元素
                            Object n=obj[objcd2];
                            str2=n.toString(); 
                            
                            str3=obj[3].toString();//含有一个真分数
                        }
                        
                        if(zfs=true)
                        {
                            String jg=str2+" "+h+" "+str1+" "+"=";
                            int size=vet.size();
                            for(int j=0;j<size;j++)
                            {
                                if(vet.get(j).equals(jg))
                                    cf=false;
                                else
                                {
                                    vet.addElement(jg);
                                    cf=true;
                                }
                            }//查重
                        }//if
                    }//while    
                }//while
            }
            //for
                System.out.println("出题完成,请选择  1打印    0预览");
                int cho=sc.nextInt();
                if (cho==1)
                {
                    for(int pt=1;pt<=vet.size();pt++)
                    {
                        System.out.print(vet.get(pt)+"     ");
                        if(pt%5==0)System.out.println(" ");
                    }
                }//打印
                else if(cho==0)
                {
                    System.out.println("默认地址 E://阿超//a.txt");
                    FileOutputStream  fl=new FileOutputStream(new File("E://阿超//a.txt"));
                    PrintStream p= new PrintStream(fl);
                    
                    for(int pt=1;pt<=vet.size();pt++)
                    {
                        p.print(vet.get(pt)+"     ");
                        if(pt%5==0)
                            p.println(" ");
                    }
                    
                    p.close();
                }//预览
                }//for
            //}//cc1       ~A.1
        
        
        
            public static void zf0(int NN,int fww) throws IOException{
                for(int i=1;i<=NN;i++)
                {
                    while(cf==false)
                    {
                        char[] fh={'+','-','*','/'};//符号数组
                        int ysfh=ne.nextInt(fh.length);
                        char h=fh[ysfh];
                        
                        int a=ne.nextInt(fww+1);
                        int b=ne.nextInt(fww+1);
                        String jg=a+" "+h+" "+b+" "+"=";
                        for(int j=0;j<vet.size();j++)
                        {
                            if(vet.get(j).equals(jg))
                                cf=false;
                            else
                            {
                                vet.add(jg);
                                cf=true;
                            }
                        }//查重完毕
                    }//while
                    System.out.println("出题完成,请选择  1打印    0预览");
                    int cho=sc.nextInt();
                    if (cho==1)
                    {
                        for(int pt=1;pt<=vet.size();pt++)
                        {
                            System.out.println(vet.get(pt)+"     ");
                            if(pt%5==0)System.out.println(" ");
                        }
                    }//打印
                    else if(cho==0)
                    {
                        System.out.println("默认地址 E://阿超//a.txt");
                        FileOutputStream  fl=new FileOutputStream(new File("E://阿超//a.txt"));
                        PrintStream p= new PrintStream(fl);
                        
                        for(int pt=1;pt<=vet.size();pt++)
                        {
                            p.print(vet.get(pt)+"     ");
                            if(pt%5==0)
                                p.println(" ");
                        }
                        p.close();
                    }//预览
                    
                }//for
            }//zf0      ~B
            
            public static  void zf1(int NN,int fww,int zfnn) throws IOException{
                for(int i=1;i<=zfnn;i++)
                {
                    boolean zfs=false;
                    while(cf==false)
                    {
                        char[] fh={'+','-','*','/'};//符号数组
                        int ysfh=ne.nextInt(fh.length);
                        char h=fh[ysfh];
                        while(zfs==false)
                        {
                            int a=ne.nextInt(fww+1);
                            int b=ne.nextInt(fww+1);
                            int c=ne.nextInt(fww+1);
                            int d=ne.nextInt(fww+1);
                            int e=ne.nextInt(fww+1);
                            int f=ne.nextInt(fww+1);
                            
                            if(a<b&&c<d)
                            {
                                zfs=true;
                                Object[] obj = new Object[4];//混合数组        {整数,整数,真分数,真分数}
                                obj[0]=e;
                                obj[1]=f;
                                obj[2]=a+"/"+b;
                                obj[3]=c+"/"+d;
                                int objcd1=ne.nextInt(obj.length);
                                Object m=obj[objcd1];
                                str1=m.toString(); 
                                
                                int objcd2=ne.nextInt(obj.length);//获取混合数组的一个元素
                                Object n=obj[objcd2];
                                str2=n.toString(); 
                                
                                str3=obj[3].toString();//含有一个真分数
                            }
                            
                            if(zfs=true)
                            {
                                String jg=str3+" "+h+" "+str1+" "+"=";
                                for(int j=0;j<vet.size();j++)
                                {
                                    if(vet.get(j).equals(jg))
                                        cf=false;
                                    else
                                    {
                                        vet.add(jg);
                                        cf=true;
                                    }
                                }//查重
                            }
                        }    
                    }//while
                }//for
                
                //整数运算
                for(int i=zfnn+1;i<=NN;i++)
                {
                    boolean zfs=false;
                    while(cf==false)
                    {
                        char[] fh={'+','-','*','/'};//符号数组
                        int ysfh=ne.nextInt(fh.length);
                        char h=fh[ysfh];
                        while(zfs==false)
                        {
                            int a=ne.nextInt(fww+1);
                            int b=ne.nextInt(fww+1);
                            int c=ne.nextInt(fww+1);
                            int d=ne.nextInt(fww+1);
                            int e=ne.nextInt(fww+1);
                            int f=ne.nextInt(fww+1);
                            
                            if(a<b&&c<d)
                            {
                                zfs=true;
                                Object[] obj = new Object[4];//混合数组        {整数,整数,真分数,真分数}
                                obj[0]=e;
                                obj[1]=f;
                                obj[2]=a+"/"+b;
                                obj[3]=c+"/"+d;
                                int objcd1=ne.nextInt(obj.length);
                                Object m=obj[objcd1];
                                str1=m.toString(); 
                                
                                int objcd2=ne.nextInt(obj.length);//获取混合数组的一个元素
                                Object n=obj[objcd2];
                                str2=n.toString(); 
                                
                                str3=obj[3].toString();//含有一个真分数
                            }
                            
                            if(zfs=true)
                            {
                                String jg=str3+" "+h+" "+str1+" "+"=";
                                for(int j=0;j<vet.size();j++)
                                {
                                    if(vet.get(j).equals(jg))
                                        cf=false;
                                    else
                                    {
                                        vet.add(jg);
                                        cf=true;
                                    }
                                }//查重
                            }
                        }    
                        
                    }//while
                    System.out.println("出题完成,请选择  1打印    0预览");
                    int cho=sc.nextInt();
                    if (cho==1)
                    {
                        for(int pt=1;pt<=vet.size();pt++)
                        {
                            System.out.print(vet.get(pt)+"     ");
                            if(pt%5==0)System.out.println(" ");
                        }
                    }//打印
                    else if(cho==0)
                    {
                        System.out.println("默认地址 E://阿超//a.txt");
                        FileOutputStream  fl=new FileOutputStream(new File("E://阿超//a.txt"));
                        PrintStream p= new PrintStream(fl);
                        
                        for(int pt=1;pt<=vet.size();pt++)
                        {
                            p.print(vet.get(pt)+"     ");
                            if(pt%5==0)
                                p.println(" ");
                        }
                        p.close();
                    }//预览
                }//for
            }//zf1      ~C
            
            
        }//class

 

最近,过得有点难过。加油!

 

posted @ 2017-03-02 18:39  陶雨洁  阅读(281)  评论(0编辑  收藏  举报