เขียนโปรแกรมแสดงสูตรคูณแม่ 2-12 ด้วยภาษา PHP + แจกซอสโค้ดฟรี


🕑 28 พ.ย. 2562
เขียนโปรแกรมแสดงสูตรคูณแม่ 2-12 ด้วยภาษา PHP + แจกซอสโค้ดฟรี

ใครกำลังฝึกเขียนภาษา PHP ลองเอาโค้ดโปรแกรมแสดงสูตรคูณแม่ 2-24 ด้วยภาษา PHP ไปศึกษากันดูได้เลย

ขั้นตอนการเโปรแกรมแสดงสูตรคูณแม่ 2-12  ด้วยภาษา PHP มีดังนี้

1สร้างไฟล์ชื่อ test.php ขึ้นมา 1 ไฟล์

2สร้างฟังก์ชั่นชื่อ generate_multiple_table( โดยมี paramiter 2 ตัว คือ $start =หมายเลขแม่สูตรคูณ , $end คือจำนวนแถวที่จะให้แสดงในแต่ละแม่สูตรคูณ(โดยทั่งไปจะมีแค่ 12 บรรทคือ 1-12) 

<?php
function generate_multiple_table($start,$end=FALSE)
{
  $result=array();
  $row = 12;
  if($end==FALSE)
  {
    $end=$start;
  }
  //วนลูปแม่สูตรคูณแต่ละแม่
  for ($start; $start <= $end; ++$start)
  {
    //วนลูปแถวที่ 1 ถึง 12
    for($i=1;$i<=$row;$i++)
    {
      //เก็บค่าสูตรคูณแต่ละแม่ใส่ตัวแปรอาร์เรย์ 2 มิติ
      //ใช้หมายเลขสูตรคูณ $start แต่ละแม่ key ตัวแรก
      //ใช้หมาย $row 1-12 เป็น key ตัวตัวที่สอง
      $result[$start][$i]=$start." x ".$i." = ".($start * $i);
    }
  }
  return $result;
}

คำสั่งที่ใช้ในฟังก์ชั่น multiple_table ไม่มีการใช้คำสั่งที่ซับซ้อนน้องๆที่เคยเขียนภาษา PHP น่าจะเข้าใจได้ไม่ยาก 

3จากนั้นให้ทดลองเรียนกใช้ฟังก์ชั่น generate_multiple_table ดังตัวอย่างโค้ดด้านล่าง

$output=generate_multiple_table(2,12);
// คำสั่ง print_r ใช้สำหรับปริ๊นดูโครงสร้างของตัวแปร
print_r($output);

4เปิดเบราเซอร์เช่น google chrome แล้วรันอยู่ url http://localhost/test.php แล้วคลิกขวา view source เราจะเห็นโครงสร้างตัวแปรดังตัวอย่างด้านล่าง

5ค่าที่ได้อยู่ในตัวแปร $output ที่ได้จากฟังก์ชั่น generate_multiple_table จะเป็นตัวแปรอารย์ 2 มิติ

Array
(
    [2] => Array
        (
            [1] => 2 x 1 = 2
            [2] => 2 x 2 = 4
            [3] => 2 x 3 = 6
            [4] => 2 x 4 = 8
            [5] => 2 x 5 = 10
            [6] => 2 x 6 = 12
            [7] => 2 x 7 = 14
            [8] => 2 x 8 = 16
            [9] => 2 x 9 = 18
            [10] => 2 x 10 = 20
            [11] => 2 x 11 = 22
            [12] => 2 x 12 = 24
        )

    [3] => Array
        (
            [1] => 3 x 1 = 3
            [2] => 3 x 2 = 6
            [3] => 3 x 3 = 9
            [4] => 3 x 4 = 12
            [5] => 3 x 5 = 15
            [6] => 3 x 6 = 18
            [7] => 3 x 7 = 21
            [8] => 3 x 8 = 24
            [9] => 3 x 9 = 27
            [10] => 3 x 10 = 30
            [11] => 3 x 11 = 33
            [12] => 3 x 12 = 36
        )

    [4] => Array
        (
            [1] => 4 x 1 = 4
            [2] => 4 x 2 = 8
            [3] => 4 x 3 = 12
            [4] => 4 x 4 = 16
            [5] => 4 x 5 = 20
            [6] => 4 x 6 = 24
            [7] => 4 x 7 = 28
            [8] => 4 x 8 = 32
            [9] => 4 x 9 = 36
            [10] => 4 x 10 = 40
            [11] => 4 x 11 = 44
            [12] => 4 x 12 = 48
        )

    [5] => Array
        (
            [1] => 5 x 1 = 5
            [2] => 5 x 2 = 10
            [3] => 5 x 3 = 15
            [4] => 5 x 4 = 20
            [5] => 5 x 5 = 25
            [6] => 5 x 6 = 30
            [7] => 5 x 7 = 35
            [8] => 5 x 8 = 40
            [9] => 5 x 9 = 45
            [10] => 5 x 10 = 50
            [11] => 5 x 11 = 55
            [12] => 5 x 12 = 60
        )

    [6] => Array
        (
            [1] => 6 x 1 = 6
            [2] => 6 x 2 = 12
            [3] => 6 x 3 = 18
            [4] => 6 x 4 = 24
            [5] => 6 x 5 = 30
            [6] => 6 x 6 = 36
            [7] => 6 x 7 = 42
            [8] => 6 x 8 = 48
            [9] => 6 x 9 = 54
            [10] => 6 x 10 = 60
            [11] => 6 x 11 = 66
            [12] => 6 x 12 = 72
        )

    [7] => Array
        (
            [1] => 7 x 1 = 7
            [2] => 7 x 2 = 14
            [3] => 7 x 3 = 21
            [4] => 7 x 4 = 28
            [5] => 7 x 5 = 35
            [6] => 7 x 6 = 42
            [7] => 7 x 7 = 49
            [8] => 7 x 8 = 56
            [9] => 7 x 9 = 63
            [10] => 7 x 10 = 70
            [11] => 7 x 11 = 77
            [12] => 7 x 12 = 84
        )

    [8] => Array
        (
            [1] => 8 x 1 = 8
            [2] => 8 x 2 = 16
            [3] => 8 x 3 = 24
            [4] => 8 x 4 = 32
            [5] => 8 x 5 = 40
            [6] => 8 x 6 = 48
            [7] => 8 x 7 = 56
            [8] => 8 x 8 = 64
            [9] => 8 x 9 = 72
            [10] => 8 x 10 = 80
            [11] => 8 x 11 = 88
            [12] => 8 x 12 = 96
        )

    [9] => Array
        (
            [1] => 9 x 1 = 9
            [2] => 9 x 2 = 18
            [3] => 9 x 3 = 27
            [4] => 9 x 4 = 36
            [5] => 9 x 5 = 45
            [6] => 9 x 6 = 54
            [7] => 9 x 7 = 63
            [8] => 9 x 8 = 72
            [9] => 9 x 9 = 81
            [10] => 9 x 10 = 90
            [11] => 9 x 11 = 99
            [12] => 9 x 12 = 108
        )

    [10] => Array
        (
            [1] => 10 x 1 = 10
            [2] => 10 x 2 = 20
            [3] => 10 x 3 = 30
            [4] => 10 x 4 = 40
            [5] => 10 x 5 = 50
            [6] => 10 x 6 = 60
            [7] => 10 x 7 = 70
            [8] => 10 x 8 = 80
            [9] => 10 x 9 = 90
            [10] => 10 x 10 = 100
            [11] => 10 x 11 = 110
            [12] => 10 x 12 = 120
        )

    [11] => Array
        (
            [1] => 11 x 1 = 11
            [2] => 11 x 2 = 22
            [3] => 11 x 3 = 33
            [4] => 11 x 4 = 44
            [5] => 11 x 5 = 55
            [6] => 11 x 6 = 66
            [7] => 11 x 7 = 77
            [8] => 11 x 8 = 88
            [9] => 11 x 9 = 99
            [10] => 11 x 10 = 110
            [11] => 11 x 11 = 121
            [12] => 11 x 12 = 132
        )

    [12] => Array
        (
            [1] => 12 x 1 = 12
            [2] => 12 x 2 = 24
            [3] => 12 x 3 = 36
            [4] => 12 x 4 = 48
            [5] => 12 x 5 = 60
            [6] => 12 x 6 = 72
            [7] => 12 x 7 = 84
            [8] => 12 x 8 = 96
            [9] => 12 x 9 = 108
            [10] => 12 x 10 = 120
            [11] => 12 x 11 = 132
            [12] => 12 x 12 = 144
        )

)

- ต่อมาก็ให้เราลองเปลี่ยนเพิ่มโค้ด for สำหรับวน loop แม่สูตรคูณที่ในตัวแปร $output ที่ได้จากฟังก์ชั่น generate_multiple_table

- loop for แรกใช้วนแม่สูตรคูณ 2-12

- loop for ที่สองใช้สำหรับนแสดงค่าบรรทัด 1-12 ของสูตรคูณแต่ละแม่

โคัดด้านล่างนี้จะเป็นโค้ดที่สมบูรณ์สามารถนำไปลองทดสอบรันกันได้เลย

<?php
function generate_multiple_table($start,$end=FALSE)
{
  $result=array();
  $row = 12;
  if($end==FALSE)
  {
    $end=$start;
  }
  //วนลูปแม่สูตรคูณแต่ละแม่
  for ($start; $start <= $end; ++$start)
  {
    //วนลูปแถวที่ 1 ถึง 12
    for($i=1;$i<=$row;$i++)
    {
      //เก็บค่าสูตรคูณแต่ละแม่ใส่ตัวแปรอาร์เรย์ 2 มิติ
      //ใช้หมายเลขสูตรคูณ $start แต่ละแม่ key ตัวแรก
      //ใช้หมาย $row 1-12 เป็น key ตัวตัวที่สอง
      $result[$start][$i]=$start." x ".$i." = ".($start * $i);
    }
  }
  return $result;
}

$output=generate_multiple_table(2,12);
foreach($output as $key =>$v)
{
  echo('สูตรคูณแม่ '.$key.'<br>');
  foreach($v as $key_row =>$v_row)
  {
    echo($v_row.'<br>');
  }
  echo('-------------------'.'<br>');
}

ผลลัพธ์ที่ได้จากการรันโค้ดด้านบน 

สูตรคูณแม่ 2
2 x 1 = 2
2 x 2 = 4
2 x 3 = 6
2 x 4 = 8
2 x 5 = 10
2 x 6 = 12
2 x 7 = 14
2 x 8 = 16
2 x 9 = 18
2 x 10 = 20
2 x 11 = 22
2 x 12 = 24
-------------------
สูตรคูณแม่ 3
3 x 1 = 3
3 x 2 = 6
3 x 3 = 9
3 x 4 = 12
3 x 5 = 15
3 x 6 = 18
3 x 7 = 21
3 x 8 = 24
3 x 9 = 27
3 x 10 = 30
3 x 11 = 33
3 x 12 = 36
-------------------
สูตรคูณแม่ 4
4 x 1 = 4
4 x 2 = 8
4 x 3 = 12
4 x 4 = 16
4 x 5 = 20
4 x 6 = 24
4 x 7 = 28
4 x 8 = 32
4 x 9 = 36
4 x 10 = 40
4 x 11 = 44
4 x 12 = 48
-------------------
สูตรคูณแม่ 5
5 x 1 = 5
5 x 2 = 10
5 x 3 = 15
5 x 4 = 20
5 x 5 = 25
5 x 6 = 30
5 x 7 = 35
5 x 8 = 40
5 x 9 = 45
5 x 10 = 50
5 x 11 = 55
5 x 12 = 60
-------------------
สูตรคูณแม่ 6
6 x 1 = 6
6 x 2 = 12
6 x 3 = 18
6 x 4 = 24
6 x 5 = 30
6 x 6 = 36
6 x 7 = 42
6 x 8 = 48
6 x 9 = 54
6 x 10 = 60
6 x 11 = 66
6 x 12 = 72
-------------------
สูตรคูณแม่ 7
7 x 1 = 7
7 x 2 = 14
7 x 3 = 21
7 x 4 = 28
7 x 5 = 35
7 x 6 = 42
7 x 7 = 49
7 x 8 = 56
7 x 9 = 63
7 x 10 = 70
7 x 11 = 77
7 x 12 = 84
-------------------
สูตรคูณแม่ 8
8 x 1 = 8
8 x 2 = 16
8 x 3 = 24
8 x 4 = 32
8 x 5 = 40
8 x 6 = 48
8 x 7 = 56
8 x 8 = 64
8 x 9 = 72
8 x 10 = 80
8 x 11 = 88
8 x 12 = 96
-------------------
สูตรคูณแม่ 9
9 x 1 = 9
9 x 2 = 18
9 x 3 = 27
9 x 4 = 36
9 x 5 = 45
9 x 6 = 54
9 x 7 = 63
9 x 8 = 72
9 x 9 = 81
9 x 10 = 90
9 x 11 = 99
9 x 12 = 108
-------------------
สูตรคูณแม่ 10
10 x 1 = 10
10 x 2 = 20
10 x 3 = 30
10 x 4 = 40
10 x 5 = 50
10 x 6 = 60
10 x 7 = 70
10 x 8 = 80
10 x 9 = 90
10 x 10 = 100
10 x 11 = 110
10 x 12 = 120
-------------------
สูตรคูณแม่ 11
11 x 1 = 11
11 x 2 = 22
11 x 3 = 33
11 x 4 = 44
11 x 5 = 55
11 x 6 = 66
11 x 7 = 77
11 x 8 = 88
11 x 9 = 99
11 x 10 = 110
11 x 11 = 121
11 x 12 = 132
-------------------
สูตรคูณแม่ 12
12 x 1 = 12
12 x 2 = 24
12 x 3 = 36
12 x 4 = 48
12 x 5 = 60
12 x 6 = 72
12 x 7 = 84
12 x 8 = 96
12 x 9 = 108
12 x 10 = 120
12 x 11 = 132
12 x 12 = 144
-------------------
 

***โค้ดด้านบนแอดมินได้แฝง bug บางอย่างไว้นอยากให้น้องๆทดลองรันโคัดและใส่พารามิเตอร์ในฟังก์ชั่น generate_multiple_table หลายๆแบบดู หรือไม่ก็ทดลองนำโค้ดของแอดมินไปพัฒนาต่อยอดกันดูได้น่ะจ๊ะบ๊ายบาย

เทพควิช-lnwquiz