四则运算网页版

·主要思路:在完成控制出题界面后,根据选择控制输出,将答案计算出来,连接到数据库,其中还涉及到最大公约数计算分数运算。

源代码:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
    <title>出题系统</title>
</head>
<body>
        <h2>出题系统</h2>
        <form action="check.jsp" method="post">
        请输入出题数量:<input type="text" name = "username"><br>
        请输入运算元数:   <input type="text" name="choose1"><br>
        输入数值范围:<input type="text" name="choose2"><br><hr>
   1.整数四则运算 2.真分数四则运算<br>
        选择:   有<input type="radio" name="choose"value=1>   无<input type="radio" name="choose"value=2><br>
        有无乘除:   有<input type="radio" name="choose3"value=1>  无<input type="radio" name="choose3"value=2><br>
        有无负数:   有<input type="radio" name="choose4"value=1>  无<input type="radio" name="choose4"value=2><br>
        有无余数:   有<input type="radio" name="choose6"value=1>  无<input type="radio" name="choose6"value=2><br>
        有无括号:   有<input type="radio" name="choose7"value=1>  无<input type="radio" name="choose7"value=2><br>
        是否显示答案:   有<input type="radio" name="choose5"value=1>  无<input type="radio" name="choose5"value=2><br>
        <input type="submit" value="出题">
        </form>
</body>
</html>

  

Yunsuan.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
    <%@   page   import= "size.com.* "%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
	JspWriter mout=pageContext.getOut();
String zh = request.getParameter("shuliang");
String zhh = request.getParameter("choose");
String Min=request.getParameter("xiao");
String Max=request.getParameter("da");
String shu = request.getParameter("geshu");
String chu = request.getParameter("chengchu");
String hao=request.getParameter("kuohao");
int x=Integer.parseInt(zh);
int y=Integer.parseInt(zhh);
int min=Integer.parseInt(Min);
int max=Integer.parseInt(Max);
int z=Integer.parseInt(shu);
int xx=Integer.parseInt(chu);
int t=Integer.parseInt(hao);
int m,n,j,jj;
char []ch=new char[4];
int a1,b1;
ch[0]=‘+‘;
ch[1]=‘-‘;
ch[2]=‘*‘;
ch[3]=‘/‘;
if(y==1)
{
    int []M=new int[10];
    String []N=new String[10];
	for(int ii=1;ii<=x;ii++)
	{
		mout.print("30道题目");
		mout.print("<br>");
		String []A=new String[30];
		a1=(int)(Math.random()*(z-1)+1);
		b1=a1+1;
	    for(int i=0;i<30;i++)
	    {
	    	A[i]="";
	    	for(int o=0;o<z;o++)
	    	{
	    		M[o]=(int)(Math.random()*max+min);
	    		if(xx==1)
	        j=(int)(Math.random()*4+1);
	    		else
	    			j=(int)(Math.random()*2+1);
	    if(o==z-1)
	        A[i]=A[i]+M[o];
	    else
	    	A[i]=A[i]+M[o]+ch[j-1];
	    	}
	    	for(int k=0;k<i;k++)
	    	{
	    		if(A[i].equals(A[k]))
	    		{
	    			i--;
	    			break;
	    		}
	    	}
	    }
	    String[] B=new String[30];
	    for(int i=0;i<30;i++)
	    {
	    	B[i]=A[i];
	    }
	    if(t==1)
	    {
	    	for(int iii=0;iii<30;iii++)
	        {
	    	    String ss=A[iii];
	    	    int num =z-1;
	            int length = ss.length();
	            int[] in = new int[num];
	            int i=0;
	            for(int j1=0;j1<ss.length();j1++)
	            {
		            if(ss.charAt(j1)==‘+‘||ss.charAt(j1)==‘/‘||ss.charAt(j1)==‘-‘||ss.charAt(j1)==‘*‘)
		            {
			            in[i] = j1;
			            i++;
		            }
	            }

	            /*for(int m1=0;m1<num;m1++)
	            {
		             mout.print("<br>");
	            }*/
	            StringBuffer temp = new StringBuffer(ss);
	            int former = (int)(Math.random()*length+1);
	            int end = (int)(Math.random()*length+1);
	            while(num<=2&&former !=1&&end != length)
	            {
		           former = (int)(Math.random()*length+1);
		           end = (int)(Math.random()*length+1);
	            }
	            if(former == 1)
	            {
		           temp.insert(former-1, ‘(‘);
		           int next = (int)(Math.random()*num);
		           while(next == 0)
			           next = (int)(Math.random()*num);
		           temp.insert(in[next]+1, ‘)‘);
		           end--;
	            }
	            if(former >1&&end <length&&num>2)
	            {
		            int first = (int)(Math.random()*num);//括起来的第一个数
		            int next = (int)(Math.random()*num);//括起来的最后一个数
		            while(next-first<=1)
		            {
			             first = (int)(Math.random()*num);//括起来的第一个数
			             next = (int)(Math.random()*num);//括起来的最后一个数
		            }

		            temp.insert(in[first]+1, ‘(‘);
		            temp.insert(in[next]+1, ‘)‘);
	           }

	           if(end == length)
	           {
		            temp.insert(end, ‘)‘);
		            int first = (int)(Math.random()*num);
		            while(first == num-1)
			            first = (int)(Math.random()*num);
		            temp.insert(in[first]+1, ‘(‘);
	           }
	           ss = temp.toString();
	           A[iii]=ss;
		    }
	    }
	    double[] K=new double[30];
         double[] C=new double[30];
        for(int i=0;i<30;i++)
        {
        	if(t==1)
    	    {
        		while(A[i].indexOf(‘(‘)!=-1)
     	        {
     	            int left=0;
     	            int right=A[i].length();
     	            char op;
     	            for(int i4=0;i4<A[i].length();i4++)
     	            {
     	                if(A[i].charAt(i4)==‘(‘)
     	                {
     	                    left=i4;
     	                }
     	                if(A[i].charAt(i4)==‘)‘)
     	                {
     	                    right=i4;
     	                    break;
     	                }
     	            }
     	            String strq=A[i].substring(left+1,right);
        	    	mout.print("<br>");
        	    	mout.print(strq);
        	    	mout.print("<br>");
     	            /* C[i]=YL.fun1(strq);
     	            B[i]=A[i].substring(0,left-1)+String.valueOf(C[i])+A[i].substring(right+1,A[i].length()-1);*/
     	        }
        		/*K[i]=YL.fun1(B[i]);
    	    	mout.print("<br>");
        		mout.print(C[i]);
    	    	mout.print("<br>");*/
    	    }
        	else
        		K[i]=YL.fun1(B[i]);
        }
	    for(int i=0;i<30;i++)
	    {
	    	mout.print((i+1)+". "+A[i]);
	    	mout.print("<br>");
	    }
    	mout.print("答案:");
    	mout.print("<br>");
    	for(int i=0;i<30;i++)
	    {
	    	mout.print((i+1)+"、"+K[i]);
	    	mout.print("<br>");
	    }
	    mout.print("-"+ii+"-");
		mout.print("<br><br><br>");
	}
}
if(y==2)
{
	for(int ii=1;ii<=x;ii++)
	{
		int a,b,c,d;
		String aa,bb;
		mout.print("30道题目");
		mout.print("<br>");
		String []B=new String[30];
		for(int i=0;i<30;i++)
	    {
	    	a=(int)(Math.random()*100+1);
	    	b=(int)(Math.random()*100+1);
	    	if(a>b)
	    		aa=b+"/"+a;
	    	else if(a<b)
	    		aa=a+"/"+b;
	    	else
	    		aa="1";
	    	c=(int)(Math.random()*100+1);
	    	d=(int)(Math.random()*100+1);
	    	if(c>d)
	    		bb=d+"/"+c;
	    	else if(c<d)
	    		bb=c+"/"+d;
	    	else
	    		bb="1";
	    	j=(int)(Math.random()*4+1);
	    	B[i]=aa+" "+ch[j-1]+" "+bb+"=";
	    	for(int k=0;k<i;k++)
	    	{
	    		if(B[i].equals(B[k]))
	    		{
	    			i--;
	    			break;
	    		}
	    	}
	    }
		for(int i=0;i<30;i++)
	    {
	    	mout.print((i+1)+". "+B[i]);
	    	mout.print("<br>");
	    }
	    mout.print("-"+ii+"-");
		mout.print("<br><br><br>");
	mout.print("-"+ii+"-");
	mout.print("<br><br><br>");
	}
}
%>
</body>
</html>

  check.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
    <%@   page   import= "size.com.* "%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
	JspWriter mout=pageContext.getOut();
String zh = request.getParameter("shuliang");
String zhh = request.getParameter("choose");
String Min=request.getParameter("xiao");
String Max=request.getParameter("da");
String shu = request.getParameter("geshu");
String chu = request.getParameter("chengchu");
String hao=request.getParameter("kuohao");
int x=Integer.parseInt(zh);
int y=Integer.parseInt(zhh);
int min=Integer.parseInt(Min);
int max=Integer.parseInt(Max);
int z=Integer.parseInt(shu);
int xx=Integer.parseInt(chu);
int t=Integer.parseInt(hao);
int m,n,j,jj;
char []ch=new char[4];
int a1,b1;
ch[0]=‘+‘;
ch[1]=‘-‘;
ch[2]=‘*‘;
ch[3]=‘/‘;
if(y==1)
{
    int []M=new int[10];
    String []N=new String[10];
	for(int ii=1;ii<=x;ii++)
	{
		mout.print("30道题目");
		mout.print("<br>");
		String []A=new String[30];
		a1=(int)(Math.random()*(z-1)+1);
		b1=a1+1;
	    for(int i=0;i<30;i++)
	    {
	    	A[i]="";
	    	for(int o=0;o<z;o++)
	    	{
	    		M[o]=(int)(Math.random()*max+min);
	    		if(xx==1)
	        j=(int)(Math.random()*4+1);
	    		else
	    			j=(int)(Math.random()*2+1);
	    if(o==z-1)
	        A[i]=A[i]+M[o];
	    else
	    	A[i]=A[i]+M[o]+ch[j-1];
	    	}
	    	for(int k=0;k<i;k++)
	    	{
	    		if(A[i].equals(A[k]))
	    		{
	    			i--;
	    			break;
	    		}
	    	}
	    }
	    String[] B=new String[30];
	    for(int i=0;i<30;i++)
	    {
	    	B[i]=A[i];
	    }
	    if(t==1)
	    {
	    	for(int iii=0;iii<30;iii++)
	        {
	    	    String ss=A[iii];
	    	    int num =z-1;
	            int length = ss.length();
	            int[] in = new int[num];
	            int i=0;
	            for(int j1=0;j1<ss.length();j1++)
	            {
		            if(ss.charAt(j1)==‘+‘||ss.charAt(j1)==‘/‘||ss.charAt(j1)==‘-‘||ss.charAt(j1)==‘*‘)
		            {
			            in[i] = j1;
			            i++;
		            }
	            }

	            /*for(int m1=0;m1<num;m1++)
	            {
		             mout.print("<br>");
	            }*/
	            StringBuffer temp = new StringBuffer(ss);
	            int former = (int)(Math.random()*length+1);
	            int end = (int)(Math.random()*length+1);
	            while(num<=2&&former !=1&&end != length)
	            {
		           former = (int)(Math.random()*length+1);
		           end = (int)(Math.random()*length+1);
	            }
	            if(former == 1)
	            {
		           temp.insert(former-1, ‘(‘);
		           int next = (int)(Math.random()*num);
		           while(next == 0)
			           next = (int)(Math.random()*num);
		           temp.insert(in[next]+1, ‘)‘);
		           end--;
	            }
	            if(former >1&&end <length&&num>2)
	            {
		            int first = (int)(Math.random()*num);//括起来的第一个数
		            int next = (int)(Math.random()*num);//括起来的最后一个数
		            while(next-first<=1)
		            {
			             first = (int)(Math.random()*num);//括起来的第一个数
			             next = (int)(Math.random()*num);//括起来的最后一个数
		            }

		            temp.insert(in[first]+1, ‘(‘);
		            temp.insert(in[next]+1, ‘)‘);
	           }

	           if(end == length)
	           {
		            temp.insert(end, ‘)‘);
		            int first = (int)(Math.random()*num);
		            while(first == num-1)
			            first = (int)(Math.random()*num);
		            temp.insert(in[first]+1, ‘(‘);
	           }
	           ss = temp.toString();
	           A[iii]=ss;
		    }
	    }
	    double[] K=new double[30];
         double[] C=new double[30];
        for(int i=0;i<30;i++)
        {
        	if(t==1)
    	    {
        		while(A[i].indexOf(‘(‘)!=-1)
     	        {
     	            int left=0;
     	            int right=A[i].length();
     	            char op;
     	            for(int i4=0;i4<A[i].length();i4++)
     	            {
     	                if(A[i].charAt(i4)==‘(‘)
     	                {
     	                    left=i4;
     	                }
     	                if(A[i].charAt(i4)==‘)‘)
     	                {
     	                    right=i4;
     	                    break;
     	                }
     	            }
     	            String strq=A[i].substring(left+1,right);
        	    	mout.print("<br>");
        	    	mout.print(strq);
        	    	mout.print("<br>");
     	            /* C[i]=YL.fun1(strq);
     	            B[i]=A[i].substring(0,left-1)+String.valueOf(C[i])+A[i].substring(right+1,A[i].length()-1);*/
     	        }
        		/*K[i]=YL.fun1(B[i]);
    	    	mout.print("<br>");
        		mout.print(C[i]);
    	    	mout.print("<br>");*/
    	    }
        	else
        		K[i]=YL.fun1(B[i]);
        }
	    for(int i=0;i<30;i++)
	    {
	    	mout.print((i+1)+". "+A[i]);
	    	mout.print("<br>");
	    }
    	mout.print("答案:");
    	mout.print("<br>");
    	for(int i=0;i<30;i++)
	    {
	    	mout.print((i+1)+"、"+K[i]);
	    	mout.print("<br>");
	    }
	    mout.print("-"+ii+"-");
		mout.print("<br><br><br>");
	}
}
if(y==2)
{
	for(int ii=1;ii<=x;ii++)
	{
		int a,b,c,d;
		String aa,bb;
		mout.print("30道题目");
		mout.print("<br>");
		String []B=new String[30];
		for(int i=0;i<30;i++)
	    {
	    	a=(int)(Math.random()*100+1);
	    	b=(int)(Math.random()*100+1);
	    	if(a>b)
	    		aa=b+"/"+a;
	    	else if(a<b)
	    		aa=a+"/"+b;
	    	else
	    		aa="1";
	    	c=(int)(Math.random()*100+1);
	    	d=(int)(Math.random()*100+1);
	    	if(c>d)
	    		bb=d+"/"+c;
	    	else if(c<d)
	    		bb=c+"/"+d;
	    	else
	    		bb="1";
	    	j=(int)(Math.random()*4+1);
	    	B[i]=aa+" "+ch[j-1]+" "+bb+"=";
	    	for(int k=0;k<i;k++)
	    	{
	    		if(B[i].equals(B[k]))
	    		{
	    			i--;
	    			break;
	    		}
	    	}
	    }
		for(int i=0;i<30;i++)
	    {
	    	mout.print((i+1)+". "+B[i]);
	    	mout.print("<br>");
	    }
	    mout.print("-"+ii+"-");
		mout.print("<br><br><br>");
	mout.print("-"+ii+"-");
	mout.print("<br><br><br>");
	}
}
%>
</body>
</html>

  Caculate.class

package demo;

import java.util.HashMap;
import java.util.Map;
import java.util.Stack;
public class Caculate {
    /*public static void main(String[] args) {
    // TODO Auto-generated method stub

    String str1="22+4*(2+3)";
    double result=fun2(str1);
    System.out.println(result);
    }*/
    public static Map pro=new HashMap();
    public static void init()
    {
        pro.put(‘+‘, 1);
        pro.put(‘-‘, 1);
        pro.put(‘*‘, 2);
        pro.put(‘÷‘, 2);
    }
    public static int getIndex(String str)
    {
       int index1=(str.indexOf(‘+‘)==-1?str.length():str.indexOf(‘+‘));
       int index2=(str.indexOf(‘-‘)==-1?str.length():str.indexOf(‘-‘));
       int index3=(str.indexOf(‘*‘)==-1?str.length():str.indexOf(‘*‘));
       int index4=(str.indexOf(‘÷‘)==-1?str.length():str.indexOf(‘÷‘));
       int index=index1<index2?index1:index2;
       index=index<index3?index:index3;
       index=index<index4?index:index4;
       return index;
    }
    public static double cal(char op,double num1,double num2)
    {
       switch(op)
       {
       case ‘+‘:
       return num1+num2;
       case ‘-‘:
       return num1-num2;
       case ‘*‘:
       return num1*num2;
       default:
       return num1%num2;
       }
    }
    public static double fun1(String str)
    {
       init();
       Stack st1=new Stack();
       Stack st2=new Stack();
       int fop=0;
       while(str.length()>0)
       {
          int index=getIndex(str);
          st1.push(Double.parseDouble(str.substring(0,index)));
          if(index!=str.length())
          {
             char op=str.charAt(index);
             str=str.substring(index+1);
             while(true)
             {
                if((int)pro.get(op)>fop)
                {
                   st2.push(op);
                   fop=(int)pro.get(op);
                   break;
                }
                 else
                 {
                    double num2= (double) st1.pop();
                    double num1=(double) st1.pop();
                    double result=cal((char)st2.pop(),num1,num2);
                    st1.push(result);
                    if(st2.size()==0)
                    {
                         st2.push(op);
                         fop=(int)pro.get(op);
                         break;
                    }
                    char cop=(char) st2.pop();
                    fop=(int)pro.get(cop);
                    st2.push(cop);
                   }
           }
          }
           else
           {
              break;
           }
       }
        while(st2.size()!=0)
        {
            double num2=(double) st1.pop();
            double num1=(double) st1.pop();
            char op=(char) st2.pop();
            st1.push(cal(op,num1,num2));
        }
    double result=(double) st1.pop();
    return result;
    }
    public static double fun2(String str)
    {
    while(str.indexOf(‘(‘)!=-1)
    {
    int left=0;
    int right=str.length();
    char op;
    for(int i=0;i<str.length();i++)
    {
    if(str.charAt(i)==‘(‘)
    {
    left=i;
    }
    if(str.charAt(i)==‘)‘)
    {
    right=i;
    break;
    }
    }
    str=str.substring(0,left)+fun1(str.substring(left+1,right))+str.substring(right+1);
    }

    return fun1(str);

}
    }

  fencal.class

package demo;

public class fencal {

    public static String fenmu(String ss,int n,int m)
    {//n 几元,m 有无括号
        ss = ‘=‘+ss+‘=‘;
        String result="";
        String cal = "";
        int num = n*2+1;
        if(m == 1)
        {
            num = num + 2;
        }
        int length = ss.length();
        int[] in = new int[num];//操作符下标数组
        String[] str = new String[n];//分母数组
        String[] str1 = new String[n];//分子数组

        int i=0;//操作符计数器
        int j=0;//字符串计数器
        int z=0;//分母数组计数器
        double fm=1;

        for(j=0;j<length;j++)
        {
            if(ss.charAt(j)==‘+‘||ss.charAt(j)==‘÷‘||ss.charAt(j)==‘-‘||ss.charAt(j)==‘*‘||ss.charAt(j)==‘(‘||ss.charAt(j)==‘)‘||ss.charAt(j)==‘/‘||ss.charAt(j)==‘=‘)
            {
                in[i] = j;
                i++;
            }
        }

        /*for(i=0;i<num;i++)
            System.out.println(in[i]);*/

        for(i=0;i<num;i++)
        {

            if(ss.charAt(in[i]) == ‘/‘)
            {
                str[z] = ss.substring(in[i]+1, in[i+1]);
                z++;
            }
        }

        /*for(z=0;z<n;z++)
            System.out.println(str[z]);*/

        for(z=0;z<n;z++)
        {
            double fmm = Double.parseDouble(str[z]);
            fm = fm*fmm;
        }

        System.out.println("分母为"+fm);

        return ""+fm;

    }

    public static String shizi(String ss,int n,int m)
    {
        String shizi = "";
        ss = ‘=‘+ss+‘=‘;
        String result="";
        String cal = "";
        int num = n*2+1;
        if(m == 1)
        {
            num = num + 2;
        }
        int length = ss.length();
        int[] in = new int[num];//操作符下标数组
        String[] str = new String[n];//分母数组
        String[] str1 = new String[n];//分子数组

        int i=0;//操作符计数器
        int j=0;//字符串计数器
        int z=0;//分母数组计数器
        double fm=1;

        for(j=0;j<length;j++)
        {
            if(ss.charAt(j)==‘+‘||ss.charAt(j)==‘÷‘||ss.charAt(j)==‘-‘||ss.charAt(j)==‘*‘||ss.charAt(j)==‘(‘||ss.charAt(j)==‘)‘||ss.charAt(j)==‘/‘||ss.charAt(j)==‘=‘)
            {
                in[i] = j;
                i++;
            }
        }

        for(i=0;i<num;i++)
            System.out.println(in[i]);

        for(i=0;i<num;i++)
        {
            if(ss.charAt(in[i]) == ‘/‘)
            {
                str[z] = ss.substring(in[i]+1, in[i+1]);
                z++;
            }
        }

        /*for(z=0;z<n;z++)
            System.out.println(str[z]);*/

        for(z=0;z<n;z++)
        {
            double fmm = Double.parseDouble(str[z]);
            fm = fm*fmm;
        }

        System.out.println("分母为"+fm);

        z=0;
        for(i=0;i<num;i++)
        {
            if(ss.charAt(in[i]) == ‘/‘)
            {
                str1[z] = ss.substring(in[i-1]+1, in[i]);
                z++;
            }
        }

        for(z=0;z<n;z++)
        {
            double fmm = Double.parseDouble(str[z]);
            double fzz = Double.parseDouble(str1[z]);
            double fz = fm/fmm*fzz;

            str1[z] = ""+fz;
        }

        for(z=0;z<n;z++)
            System.out.println("分子"+str1[z]);

        z=0;
        int numm = n-1;
        if(m == 1)
            numm = numm +2;
        String[] str2 =new String[numm];
        for(i=0;i<num;i++)
        {
            if(ss.charAt(in[i])!=‘=‘&&ss.charAt(in[i])!=‘/‘)
            {
                str2[z] = ""+ss.charAt(in[i]);
                z++;
            }
        }

        /*for(z=0;z<numm;z++)
            System.out.println(str2[z]);*/

        if(m == 1)
        {

            for(i=0;i<numm;i++)
            {
                if(str2[i].equals("(")&&i>0)
                {
                    j=i-1;
                    str2[j] = str2[j] + str2[i];
                    break;
                }
            }

            for(j=j+1;j<numm-1;j++)
                str2[j]=str2[j+1];
        }

        if(m == 1)
        {
            for(i=0;i<numm;i++)
            {

                if(str2[i].equals(")")&&i<numm-1)
                {System.out.println("zou");
                    j=i+1;
                    str2[i] = str2[i]+str2[j];
                    break;
                }
            }

            for(;j<numm-1;j++)
                str2[j]=str2[j+1];
        }

        for(z=0;z<numm;z++)
            System.out.println(str2[z]);

        if(str2[0].equals("("))
        {
            for(i=0;i<n-1;i++)
            {
                shizi = shizi + str2[i]+""+ str1[i];
            }
            shizi = shizi + str2[i]+str1[n-1];
        }
        else if(str2[numm-1].equals(")"))
        {
            for(i=0;i<n-1;i++)
            {
                shizi = shizi + str1[i]+ ""+ str2[i];
            }
            shizi = shizi +str1[n-1]+str2[i];
        }
        else
        {
            for(i=0;i<n-1;i++)
            {
                shizi = shizi + str1[i]+""+ str2[i];
            }

            shizi = shizi + str1[n-1];
        }

        return shizi;
    }

    public static int getGongYueShu(int a, int b){
        int t = 0;
        if(a<b){
            t =a;
            a=b;
            b=t;
            }
        int c=a%b;
        if(c==0)
        {
            return b;
        }
        else
            return getGongYueShu(a,c);
        }

}

  Action.class

package demo;

import java.sql.*;

public class Action {
    public void add(int num,String str1,String str2) throws SQLException{
         Connection conn  = Main.getConn();  //获取数据库连接
         Statement st = conn.createStatement();
         String sql = "insert into calTable([number],[question],[answer]) values(‘"+ num +"‘,‘" + str1 + "‘,‘" + str2 + "‘)";
         st.executeUpdate(sql);
         st.close();
         conn.close();
 }
}

  Main.class

package demo;

import java.sql.*;

public class Main {
    public static Connection getConn(){

      String driverName="com.microsoft.sqlserver.jdbc.SQLServerDriver";
      Connection dbConn = null;
      String dbURL="jdbc:sqlserver://127.0.0.1:1433;DatabaseName=Size";
      String userName="sa";
      String userPwd="123456";
     try
    {
        Class.forName(driverName);
        System.out.println("加载驱动成功!");
    }catch(Exception e){
        e.printStackTrace();
        System.out.println("加载驱动失败!");
    }
    try{
         dbConn=DriverManager.getConnection(dbURL,userName,userPwd);

            System.out.println("连接数据库成功!");
    }catch(Exception e)
    {
        e.printStackTrace();
        System.out.print("SQL Server连接失败!");
    }
    return dbConn;
    }
 }

  

截图:

总结:四则运算的完成是我和张家星同学一起完成的 ,虽然有些不足和不满意的地方,但是在以后会注意并改正。

时间: 2024-10-26 01:14:43

四则运算网页版的相关文章

结对作业:四则运算网页版

coding克隆仓地址:https://git.coding.net/huyifeng1998/jieduixiangmu.git 一.预期PSP: 二.结对编程对接口的设计 information hiding: 信息隐藏是指在设计和确定模块时,使得一个模块内包含的特定信息(过程或数据),对于不需要这些信息的其他模块来说,是不可访问的. 我们在结对项目中将各种经常用到的类和方法放在外联,而不是内嵌在一个类中,这样每个类分工明确,便于修改.信息隐藏同时体现在各种类.算法对用户不可见,能隐藏复杂度

小学四则运算网页版

设计思想: 写好java程序后,需要将程序嵌入网页中,编写jsp脚本文件,使用数组来实现java和jsp的交互:session标签,可以实现网页之间参数的传递. 源程序代码(java): 1 import java.util.Scanner; 2 import java.util.ArrayList; 3 public class random_03{ 4 public static void main(String[] args){ 5 int N,i,N1,N2; 6 int sum=0;

网页版的四则运算出题

用javaweb编写的网页版的四则运算出题 这个网页自己可以控制总的出题数目,以及自己所要要求的每行输出的个数, 之后再出题中应用到了随机数,并且在代码中,保证每一道题不是重复的,在一次做题中仅仅出现一次,并且自己还设定了相应的出题规则. 主要代码如下主要分为四个界面. 界面1: <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8&qu

四则运算网页

一.题目: 四则运算(网页版) 二.程序设计思想 1.利用html语句和css标签,设计四则运算的首页,并将所需的参数值输入. 2.在出题页面得到参数值,利用javabean,随机产生相应数量的四则运算题目. 3.在最后一个界面,进行简单的计算(题目的正误). 三.源代码 <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%

一个简单的税利计算器(网页版)

嗯嗯,做一个简单的网页版的税率计算器,功能比较简单,但是相对比较实用.因为参考了一些其他作品,所以在计算汇率的时候习惯性的是以美元做单位.具体的功能有着较为详细的标注.仅供大家学习参考下. <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title>JavaScript Loan Calculator</title>

Pongo网页版JavaScript源代码及设计思路

1.游戏背景介绍(写在前面的废话): 五月初的某天,看到某网推荐了这款游戏,Pongo,看着还不错的样子就用ipad下下来试玩了下,玩了两局感觉还错挺过瘾的,因为是手欠类游戏嘛大家懂的. 但是没一会发现游戏在ipad似乎有些bug,玩一会就会卡住然后只能强退了,真是揪心,记录还等着破呢. 怎么办?玩游戏不如玩自己的游戏的念头又邪恶的出现了,然后就把pad丢给了朋友虐心去,我默默回到电脑前开始动手自己写个不会卡的. 大概两小时吧,写出了基本框架,然后扔sinaapp里试了下效果基本能玩就洗洗睡了.

二手书网页版mis系统

在小学期这几天的时间,自己将上个学期做的书书网二手书app做出了网页版.该系统只要分为前端用户界面和后端管理员界面. 管理员具有添加书的一级分类和二级分类的功能. 用户具有买书和卖书的功能. 下面是源程序和截图: 截图: 前台界面:     后台界面: 这里的分类用了二级菜单的模式,如果不选择父类,就是添加一级分类,否则就是某一级分类下的二级分类. 下面是源程序的下载路径:(数据库表我就不展示了),主要是一些javabean和servlet.如果想要所有的源代码可以联系我. https://pa

ORACLE的安装与网页版创建表空间的简单操作以及PLsql的简单操作

1.oracle的安装: 安装简单易学,在这里不做解释.下载看装包后耐心等待,注意安装目录不要有中文字符,尽量按照指定目录进行安装.安装完成后会占用有大约5g的内存. 如果要卸载oracle,需要用其自带的卸载工具进行卸载[universal installer],然后删除注册表项,删除环境变量,删除目录并且重新启动计算机. 2.在网页版进行创建表空间: 进入网页版: 在电脑的服务中我们可以看到一共有7个oracle的服务项目,其中只有三个是正在启动中.这三项中,只有当OracleDBConso

自已开发完美的触摸屏网页版仿app弹窗型滚动列表选择器/日期选择器

手机端网页版app在使用下拉列表时,传统的下拉列表使用起来体验非常不好,一般做的稍好一点的交互功能界面都不会直接使用下拉列表,所以app的原生下拉列表都是弹窗列表选择,网页型app从使用体验上来当然也应该做成那样,前段时间在开发网页版app时就遇到这种需求,不仅是日期选择器,数据列表.变量列表选择等等下拉列表型需求都需要,网上找来找去只找到一款比较好的mobiscroll,不过下载比较麻烦,感觉比较奇怪的是jquery.mobile.jeasyui.mobile都没有提供这种控件,不知道为什么?