Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk merealisasikan segi tiga sama kaki Yang Hui dalam PHP

Bagaimana untuk merealisasikan segi tiga sama kaki Yang Hui dalam PHP

PHPz
PHPzasal
2023-04-24 10:51:47621semak imbas

Segitiga Isosceles Yang Hui adalah salah satu tokoh klasik dalam matematik Ia bukan sahaja mempunyai rupa yang cantik, malah mempunyai sifat matematik yang baik dan digunakan secara meluas dalam pelbagai bidang. Dalam pengaturcaraan komputer, kita juga boleh menggunakan pelbagai bahasa untuk melaksanakan algoritma penjanaan segi tiga sama kaki Yang Hui Artikel ini akan memperkenalkan cara menggunakan bahasa PHP untuk melaksanakan penjanaan segi tiga sama kaki Yang Hui.

  1. Konsep segi tiga sama kaki Yang Hui

Segitiga sama kaki Yang Hui juga dipanggil segi tiga Pascal Ia ialah segi tiga yang terdiri daripada nombor daripada segi tiga Di baris bawah segi tiga, setiap nombor ialah jumlah dua nombor di atasnya, dalam baris di bawahnya, dan seterusnya. Selain itu, kedua-dua hujung setiap baris adalah 1.

Berikut ialah contoh segi tiga sama kaki Yang Hui:

       1
      1 1
     1 2 1
    1 3 3 1
  1 4  6  4 1
1 5 10 10 5 1

Antaranya, nombor ke-k dalam baris ke-n boleh dinyatakan sebagai Gabungan(n-1, k-1), iaitu daripada Pilih bilangan kombinasi nombor k-1 daripada nombor n-1. Oleh itu, segi tiga sama kaki Yang Hui juga digunakan secara meluas dalam kombinatorik.

  1. Gunakan PHP untuk merealisasikan segi tiga sama kaki Yang Hui

Dalam PHP, kita boleh menggunakan pernyataan gelung dan tatasusunan untuk merealisasikan penjanaan segi tiga sama kaki Yang Hui. Kaedah pelaksanaan khusus adalah seperti berikut:

<?php
function generatePascalTriangle($numRows) {
  $triangle = [];
  if ($numRows > 0) {
    $triangle[] = [1];
    for ($i = 1; $i < $numRows; $i++) {
      $row = [$triangle[$i - 1][0]];
      for ($j = 1; $j < $i; $j++) {
        $row[] = $triangle[$i - 1][$j - 1] + $triangle[$i - 1][$j];
      }
      $row[] = $triangle[$i - 1][$i - 1];
      $triangle[] = $row;
    }
  }
  return $triangle;
}

Dalam kod di atas, kami mula-mula mentakrifkan fungsi yang dipanggil generatePascalTriangle, yang menerima parameter $numRows, menunjukkan bilangan baris segi tiga sama kaki Yang Hui yang memerlukan untuk dijana. Seterusnya, kami mencipta tatasusunan bernama $triangle untuk menyimpan nombor dalam setiap baris.

Jika $numRows lebih besar daripada 0, kami menambah nombor 1 dalam baris pertama kepada $triangle. Kemudian, gunakan pernyataan gelung untuk melintasi bermula dari baris kedua Setiap traversal menjana baris nombor dan menambahnya ke $triangle. Dalam proses menjana setiap baris nombor, kami menggunakan pernyataan gelung lain dan menggunakan nombor dalam baris sebelumnya untuk mengira nombor dalam baris semasa. Khususnya, kita mula-mula menggunakan nombor pertama baris semasa, iaitu, $triangle[$i - 1][0], dan kemudian mengira nombor tengah baris semasa dalam turutan, iaitu $triangle[$i - 1][$j - 1] + $triangle[$i - 1][$j], dan akhirnya menambah nombor terakhir baris semasa, $triangle[$i - 1][$i - 1]. Akhir sekali, kita mendapat nombor $baris baris semasa dan menambahnya pada $segitiga. Akhirnya, fungsi mengembalikan tatasusunan $triangle dan penjanaan selesai.

Apabila menggunakan fungsi di atas untuk menjana segi tiga sama kaki Yang Hui, kita boleh menetapkan $numRows kepada sebarang integer positif untuk mengawal bilangan baris untuk menjana segitiga sama kaki Yang Hui. Pada masa yang sama, kita boleh menggunakan gelung berganda untuk mengeluarkan nombor yang dijana secara grafik, dengan itu mempersembahkan rupa cantik segi tiga sama kaki Yang Hui.

Berikut ialah contoh segi tiga sama kaki Yang Hui yang dijana menggunakan fungsi di atas:

$numRows = 6;
$triangle = generatePascalTriangle($numRows);
for ($i = 0; $i < $numRows; $i++) {
  for ($j = 0; $j <= $i; $j++) {
    echo $triangle[$i][$j] . " ";
  }
  echo "<br>";
}

Dalam kod di atas, kami mula-mula menetapkan $numRows kepada 6, menunjukkan bahawa 6 baris nombor perlu dijana. Kemudian, gunakan fungsi generatePascalTriangle untuk menjana segi tiga sama kaki Yang Hui, dan gunakan gelung berganda untuk melintasi tatasusunan $triangle untuk mengeluarkan nombor dalam bentuk grafik. Akhir sekali, kita boleh mendapatkan hasil keluaran berikut:

1 
1 1 
1 2 1 
1 3 3 1 
1 4 6 4 1 
1 5 10 10 5 1
  1. Ringkasan

Artikel ini memperkenalkan konsep segi tiga sama kaki Yang Hui dan aplikasinya dalam matematik gabungan At pada masa yang sama, kami juga memperkenalkan penggunaan bahasa PHP untuk melaksanakan algoritma penjanaan segi tiga sama kaki Yang Hui. Melalui pengenalan artikel ini, pembaca boleh belajar cara menggunakan tatasusunan dan pernyataan gelung untuk menjana segi tiga sama kaki Yang Hui, dan juga boleh menggunakan tatasusunan dan pernyataan gelung untuk menyelesaikan masalah lain yang serupa.

Atas ialah kandungan terperinci Bagaimana untuk merealisasikan segi tiga sama kaki Yang Hui dalam PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn