在5行以及2列表生成器上遇到php Random Math和operator generator问题

时间:2016-10-20 08:05:42

标签: php math random operators generator

到目前为止,我有这个生成随机数,我需要它来生成随机运算符,其中它只是滚动数组并发出相同的2个运算符。

因此,不是生成5行而是生成大约12行。我可以让它在数学问题中显示运算符,但我不能让运算符在每一行上随机化。某处出了点问题。

我还必须在两个列表中生成问题,其中一列中存在问题而另一列中存在问题。如果有人能够至少指出我正确的方向,那将非常感激!

['abcdeabcdeabcdeabcdeabcdeabcde']

2 个答案:

答案 0 :(得分:0)

尝试这种方式:

for ($x = 0; $x <= 5; $x++) {
$num1 = mt_rand(1, 9);
$num2 = mt_rand(1, 9);

$operators = array("+","-",);
$value = $operators[array_rand($operators)];

switch ($value) {
case "+":
    $result = $num1 + $num2;
    break;
case "-":
    $result = $num1 - $num2;
    break;
}
    echo "$num1 $value $num2 = $result <br>";
}

答案 1 :(得分:0)

  1. 您不需要迭代$operators,因为您要随机选择。
  2. 无需在循环中重新创建for
  3. 如果代码应该输出5行,那么$x < 5条件应该 更改为$x <= 5(而不是<?php $operators = ["+", "-"]; for ($x = 0; $x < 5; $x++) { $num1 = mt_rand(1, 9); $num2 = mt_rand(1, 9); $k = array_rand($operators); switch ($operators[$k]) { case "+": $result = $num1 + $num2; break; case "-": // break default: $result = $num1 - $num2; break; } echo "$num1 {$operators[$k]} $num2 = $result<br/>\n"; } )。
  4. 修正版

    $(function() {
      $("#demo-agents li").hide();
       $(".continents li a").on('click', function(e) {
            var liToShow = $(this).attr("href");
            $("#demo-agents li").hide();
            $(liToShow).show();
            e.preventDefault();
        });
    });