jsp随机四则运算的具体代码操作

来源:爱站网时间:2022-10-21编辑:网友分享
jsp随机四则运算的具体代码操作包含有加减乘除,想要在jsp编程中加入这些代码,一定要非常注意,感兴趣的小伙伴不妨来了解下,爱站技术频道小编整理的这篇文章对你日后一定会带来不小的帮助。

本文主要介绍了随机的四则运算题目,这样就可以自动的生成随机的30个四则运算题目了。可以生成随机的四则运算题目给给小学生用,但是还是有问题,小学生啊!他们不知道负数,不知道小数。所以还要加入判定条件。具体代码如下:

switch(Arr[n]){

    case "+":{

    sum=a+b;

    break;

    }

    case "-":{

    sum=a-b;

    while(sum<0){

     var a = GetRandomNum(1,30);

     var b = GetRandomNum(1,30);

     sum=a-b;

    }

    break;

    }

    case "*":{

    sum=a*b;

    break;

    }

    case "/":{

    sum=a/b;

    while(hasDot(sum)){

      var a = GetRandomNum(1,100);

      var b = GetRandomNum(1,100);

      sum=a/b;

     }

    break;

    }

这样负数和小数都没有了。

 不过,小学生貌似会分数的运算。于是我又开始试试写分数的。

<body>

<button class="btn btn-success btn-sm" type='button' onclick="pl_f()">开始生成题目</button>

 <span id="text_f"></span>

 <script>

 function GetRandomNum(Min,Max)

 {

  var Range = Max - Min;

  var Rand = Math.random();

  return(Min + Math.round(Rand * Range));

 }

 function max_num(x,y) {

  var t;

  while (y) {

   t = x%y;

   x = y;

   y = t;

  }

  return x;

 }

 function fenshu(a,b,p) {

  if (p==1) {

   if (a>b) {

    return a+"/"+b;

   }else if(a<b){

    return a+"/"+b;

   }else {

    return 1;

   }

  }else {

   var x=a/p;

   var y=b/p;

   if(y==1){

    return x;

   }else{

    return x+"/"+y;

   }

  }

 }

 function pl_f() {

  var son_a = GetRandomNum(1,30);

  var par_b = GetRandomNum(1,30);

  var son_c = GetRandomNum(1,30);

  var par_d = GetRandomNum(1,30);

  var X=son_a+"/"+par_b;

  var Y=son_c+"/"+par_d;

  document.write("第一个分数:"+X+"<br>");

  document.write("第二个分数"+Y+"<br>");

  max_x=max_num(son_a,par_b);

  max_y=max_num(son_c,par_d);

  document.write("第一个最大公约数"+max_x+"<br>");

  document.write("第二个最大公约数"+max_y+"<br>");

  var N=fenshu(son_a,par_b,max_x);

  var M=fenshu(son_c,par_d,max_y);

  document.write("第一个分数化简:"+N+"<br>");

  document.write("第二个分数化简"+M);

 }

 </script>

 </body>

这个可以动态的生成两个分数,然后输出这个分数分子和分母的最大公约数。最后输出分子的最简式。

最后就是将分数放入整数一起了!

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

 <head>

 <title> new document </title>

 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">

 <meta name="generator" content="editplus" />

 <meta name="author" content="" />

 <meta name="keywords" content="" />

 <meta name="description" content="" />

 </head>

 

 <body>

 <button type='button' onclick="play_all()">开始生成题目</button>

 <span id="text"></span>

 </body>

 <script>

 function GetRandomNum(Min,Max)

 {

  var Range = Max - Min;

  var Rand = Math.random();

  return(Min + Math.round(Rand * Range));

 }

 function max_num(x,y) {

  var t;

  while (y) {

   t = x%y;

   x = y;

   y = t;

  }

  return x;

 }

 function fenshu(a,b,p) {

  if (p==1) {

   if (a>b) {

    return a+"/"+b;

   }else if(a<b){

    return a+"/"+b;

   }else {

    return 1;

   }

  }else {

   var x=a/p;

   var y=b/p;

   if(y==1){

    return x;

   }else{

    return x+"/"+y;

   }

  }

 }

 function f_count(a,b,c,d) {

   var Arr = ["+","-","*","/"];

   var n = GetRandomNum(0,3);

   switch(Arr[n]){

    case "+":{

    var sum_x=(a*d)+(b*c);

    var sum_y=b*d;

    max_x=max_num(sum_x,sum_y);

    max_y=max_num(sum_x,sum_y);

    var N=fenshu(sum_x,sum_y,max_x);

    return a+"/"+b+"+"+c+"/"+d+"="+N;

    break;

    }

    case "-":{

    var sum_x=(a*d)-(b*c);

     while (sum_x<0) {

      var a = GetRandomNum(1,30);

      var b = GetRandomNum(1,30);

      var c = GetRandomNum(1,30);

      var d = GetRandomNum(1,30);

      var sum_x=(a*d)-(b*c);

     }

    var sum_y=b*d;

    max_x=max_num(sum_x,sum_y);

    max_y=max_num(sum_x,sum_y);

    var N=fenshu(sum_x,sum_y,max_x);

    return a+"/"+b+"-"+c+"/"+d+"="+N;

    break;

    }

    case "*":{

    var sum_x=a*c;

    var sum_y=b*d;

    max_x=max_num(sum_x,sum_y);

    max_y=max_num(sum_x,sum_y);

    var N=fenshu(sum_x,sum_y,max_x);

    return a+"/"+b+"*"+c+"/"+d+"="+N;

    break;

    }

    case "/":{

    var sum_x=a*d;

    var sum_y=b*c;

    max_x=max_num(sum_x,sum_y);

    max_y=max_num(sum_x,sum_y);

    var N=fenshu(sum_x,sum_y,max_x);

    return a+"/"+b+"÷"+c+"/"+d+"="+N;

    break;

    }

   }

 }

 function count(a,b){

   var Arr = ["+","-","*","/"];

   var n = GetRandomNum(0,3);

   switch(Arr[n]){

    case "+":{

    var sum=a+b;

    return a+"+"+b+"="+sum;

    break;

    }

    case "-":{

    var sum=a-b;

    while(sum<0){

     var a = GetRandomNum(1,30);

     var b = GetRandomNum(1,30);

     var sum=a-b;

    }

    return a+"-"+b+"="+sum;

    break;

    }

    case "*":{

    var sum=a*b;

    return a+"*"+b+"="+sum;

    break;

    }

    case "/":{

    var sum=a/b;

    while(a%b!==0){

     var max_x=max_num(a,b);

     var N=fenshu(a,b,max_x);

     return a+"÷"+b+"="+N;

    }

    return a+"÷"+b+"="+sum;

    break;

    }

   }

 }

 function pl_f() {

  var son_a = GetRandomNum(1,30);

  var par_b = GetRandomNum(1,30);

  var son_c = GetRandomNum(1,30);

  var par_d = GetRandomNum(1,30);

  var suma=f_count(son_a,par_b,son_c,par_d);

  return suma;

 }

 function pl() {

   var a = GetRandomNum(1,30);

   var b = GetRandomNum(1,30);

   var sumb=count(a,b);

   return sumb;

 }

 function play_all() {

   for (i = 1; i <=30; i++) {

    var a = GetRandomNum(0,1);

    document.getElementById("text").innerHTML+=("<br>"+"第"+i+"题:");

    switch (a) {

     case 0:

      var A=pl();

      document.getElementById("text").innerHTML+=(A);

      break;

     case 1:

      var B=pl_f();

      document.getElementById("text").innerHTML+=(B);

      break;

    }

   }

 }

 </script>

</html>

执行完节目就成这样的啦

最后上个答案和题目分开的版本!

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

 <head>

 <title> new document </title>

 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">

 <meta name="generator" content="editplus" />

 <meta name="author" content="" />

 <meta name="keywords" content="" />

 <meta name="description" content="" />

 </head>

 

 <body>

 <button type='button' onclick="play_all()">开始生成题目</button>

 <span id="text"></span>

 <span id="text2"></span>

 </body>

 <script>

 function GetRandomNum(Min,Max)

 {

  var Range = Max - Min;

  var Rand = Math.random();

  return(Min + Math.round(Rand * Range));

 }

 function max_num(x,y) {

  var t;

  while (y) {

   t = x%y;

   x = y;

   y = t;

  }

  return x;

 }

 function fenshu(a,b,p) {

  if (p==1) {

   if (a>b) {

    return a+"/"+b;

   }else if(a<b){

    return a+"/"+b;

   }else {

    return 1;

   }

  }else {

   var x=a/p;

   var y=b/p;

   if(y==1){

    return x;

   }else{

    return x+"/"+y;

   }

  }

 }

 function f_count(a,b,c,d) {

   var Arr = ["+","-","*","/"];

   var n = GetRandomNum(0,3);

   switch(Arr[n]){

    case "+":{

    var sum_x=(a*d)+(b*c);

    var sum_y=b*d;

    max_x=max_num(sum_x,sum_y);

    max_y=max_num(sum_x,sum_y);

    var N=fenshu(sum_x,sum_y,max_x);

    return a+"/"+b+"+"+c+"/"+d+"="+N;

    break;

    }

    case "-":{

    var sum_x=(a*d)-(b*c);

     while (sum_x<0) {

      var a = GetRandomNum(1,30);

      var b = GetRandomNum(1,30);

      var c = GetRandomNum(1,30);

      var d = GetRandomNum(1,30);

      var sum_x=(a*d)-(b*c);

     }

    var sum_y=b*d;

    max_x=max_num(sum_x,sum_y);

    max_y=max_num(sum_x,sum_y);

    var N=fenshu(sum_x,sum_y,max_x);

    return a+"/"+b+"-"+c+"/"+d+"="+N;

    break;

    }

    case "*":{

    var sum_x=a*c;

    var sum_y=b*d;

    max_x=max_num(sum_x,sum_y);

    max_y=max_num(sum_x,sum_y);

    var N=fenshu(sum_x,sum_y,max_x);

    return a+"/"+b+"*"+c+"/"+d+"="+N;

    break;

    }

    case "/":{

    var sum_x=a*d;

    var sum_y=b*c;

    max_x=max_num(sum_x,sum_y);

    max_y=max_num(sum_x,sum_y);

    var N=fenshu(sum_x,sum_y,max_x);

    return a+"/"+b+"÷"+c+"/"+d+"="+N;

    break;

    }

   }

 }

 function count(a,b){

   var Arr = ["+","-","*","/"];

   var n = GetRandomNum(0,3);

   switch(Arr[n]){

    case "+":{

    var sum=a+b;

    return a+"+"+b+"="+sum;

    break;

    }

    case "-":{

    var sum=a-b;

    while(sum<0){

     var a = GetRandomNum(1,30);

     var b = GetRandomNum(1,30);

     var sum=a-b;

    }

    return a+"-"+b+"="+sum;

    break;

    }

    case "*":{

    var sum=a*b;

    return a+"*"+b+"="+sum;

    break;

    }

    case "/":{

    var sum=a/b;

    while(a%b!==0){

     var max_x=max_num(a,b);

     var N=fenshu(a,b,max_x);

     return a+"÷"+b+"="+N;

    }

    return a+"÷"+b+"="+sum;

    break;

    }

   }

 }

 function pl_f() {

  var son_a = GetRandomNum(1,30);

  var par_b = GetRandomNum(1,30);

  var son_c = GetRandomNum(1,30);

  var par_d = GetRandomNum(1,30);

  var suma=f_count(son_a,par_b,son_c,par_d);

  return suma;

 }

 function pl() {

   var a = GetRandomNum(1,30);

   var b = GetRandomNum(1,30);

   var sumb=count(a,b);

   return sumb;

 }

 function play_all() {

   for (i = 1; i <=30; i++) {

    var a = GetRandomNum(0,1);

    document.getElementById("text").innerHTML+=("<br>"+"第"+i+"题:");

    switch (a) {

     case 0:

      var A=pl();

      var strs = A.split("=");

      document.getElementById("text").innerHTML+=(strs[0]+"="+"<br>");

      document.getElementById("text2").innerHTML+=("<br>"+"第"+i+"题答案:"+strs[1]);

      break;

     case 1:

      var B=pl_f();

      var strs = B.split("=");

      document.getElementById("text").innerHTML+=(strs[0]+"="+"<br>");

      document.getElementById("text2").innerHTML+=("<br>"+"第"+i+"题答案:"+strs[1]);

      break;

    }

   }

 }

 </script>

</html>

这篇jsp随机四则运算的具体代码操作内容朋友们都看明白了吗?爱站技术频道小编分享的这些内容希望能帮助大家,多关注我们网站,一定会让你意想不到的收获。

上一篇:jsp中的倒影效果怎么做

下一篇:jsp编程中的图片效果具体代码

您可能感兴趣的文章

相关阅读

热门软件源码

最新软件源码下载