Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk mendapatkan segitiga Yang Hui 10 baris melalui program PHP
Mereka yang telah mempelajari bahasa pengaturcaraan atau algoritma pasti akan bersentuhan dengan Segitiga Yang Hui (salah satu hasil penyelidikan cemerlang matematik Cina purba). Ia sendiri tidak mendalam Hari ini kita akan menggunakan PHP untuk menulis program untuk mengeluarkan segi tiga Yang Hui dengan 4 baris dan 3 lajur.
Pertama, mari belajar tentang Segitiga Yang Hui.
Segitiga Yang Hui ialah susunan geometri bagi pekali binomial Newton dalam segitiga Setiap nombor di dalamnya adalah sama dengan jumlah dua nombor di atas.
Daripada gambar di atas kita boleh mencari corak dengan mudah:
Elemen sebelum dan selepas setiap baris ialah 1
Terdapat beberapa elemen dalam mana-mana baris
Bermula dari baris ketiga, kecuali permulaan dan akhir setiap baris, setiap elemen lain adalah di atas Jumlah dua elemen bersebelahan (jumlah nombor pada kedudukan yang sama dalam baris sebelumnya dan digit sebelumnya pada kedudukan yang sama dalam baris sebelumnya)
Selepas mencari corak, kita boleh menyediakan algoritma, Kemudian tetapkan atur cara mengikut algoritma (artikel ini menggunakan berganda tatasusunan untuk bersarang gelung untuk melaksanakan segi tiga Yang Hui. Jika anda tidak tahu tentang gelung, anda boleh menyemak " Pembelajaran Gelung PHP 3: Cara menggunakan pernyataan gelung untuk merentasi tatasusunan" )
Analisis algoritma: Terdapat tatasusunan baris i dan lajur j (j adalah kurang daripada atau sama dengan i)
Double untuk gelung, tahap pertama gelung, melintasi baris i tatasusunan; Dan nilai lajur j tatasusunan mestilah kurang daripada atau sama dengan nilai baris i tatasusunan
Pernyataan if digunakan dalam badan gelung peringkat kedua untuk penghakiman j=1
atau i=j
, nilainya ialah $array[i][j] = 1
; Kod program PHP Fungsian:
$array[i][j]
$array[ i-1 ][ j-1 ]
$array[ i-1 ][ j ]
<?php function yh_put($max) { $array = []; // 循环列数 for($i = 1; $i <= $max; $i++) { // 循环行数 for( $j=1; $j <= $i; $j++) { // 每行的第一个和最后一个都是1 if( $j == 1 || $j == $i ) { echo $array[$i][$j] = 1; } else { // 上一行同位置的数 + 上一行同位置的前一位数之和 echo $array[$i][$j] = $array[ $i-1 ][ $j-1 ]+$array[ $i-1 ][ $j ]; } echo " "; } echo "<br>"; } unset($array); } yh_put(10);Penjelasan video fungsi tatasusunan fungsi PHP
, datang dan pelajari!
Atas ialah kandungan terperinci Bagaimana untuk mendapatkan segitiga Yang Hui 10 baris melalui program PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!