ใน C++ รูปทรงเรขาคณิตต่างๆ สามารถพิมพ์ได้โดยใช้ชุดห่วงต่างๆ ซึ่งรวมถึงปิรามิด สี่เหลี่ยม สี่เหลี่ยม และอื่นๆ ส่วนเพิ่มเติมเฉพาะของกลุ่มสามเหลี่ยมใน C ++ คือ Pascal's Triangle ซึ่งใช้อัลกอริธึมเฉพาะเพื่อพิมพ์องค์ประกอบต่างๆ ในรูปสามเหลี่ยม
สามเหลี่ยมของปาสคาลในภาษา C++
Pascal's Triangle ในภาษา C++ คืออาร์เรย์ของสัมประสิทธิ์ทวินามที่จัดเรียงเป็นรูปสามเหลี่ยม จำนวนองค์ประกอบในแต่ละแถวจะเท่ากับจำนวนแถว และองค์ประกอบแรกและสุดท้ายของแต่ละแถวจะถูกตั้งค่าเป็น 1 ทุกรายการในบรรทัดคือค่าสัมประสิทธิ์ทวินาม และเลือกค่าของตัวเลขโดยใช้คุณสมบัติการบวก ในลักษณะที่ว่าทุกองค์ประกอบในรูปสามเหลี่ยมจะได้มาจากการบวกสององค์ประกอบด้านบนและด้านซ้ายของด้านบนด้วย สูตรของสัมประสิทธิ์ทวินามสำหรับสามเหลี่ยมปาสคาล
ค ( เส้นเอ็น ) = เส้น ! / ( ( เส้น - - n ) ! * n )
วิธีง่ายๆ ในการใช้ Pascal's Triangle คือการรันลูปและใช้วิธีสัมประสิทธิ์ทวินามในแต่ละลูป
สามเหลี่ยมปาสคาลโดยใช้วงซ้อน
นี่คือซอร์สโค้ดที่ใช้ในการพิมพ์ Pascal's Triangle ในภาษา C++:
#รวม
โดยใช้ เนมสเปซ มาตรฐาน ;
ภายใน หลัก ( )
{
ภายใน แถว ;
ศาล << 'ป้อนจำนวนแถวสำหรับ Pascal's Triangle': ' ;
การกิน >> แถว ;
ศาล << สิ้นสุด ;
สำหรับ ( ภายใน ฉัน = 0 ; ฉัน < แถว ; ฉัน ++ )
{
ภายใน วาล = 1 ;
สำหรับ ( ภายใน เจ = 1 ; เจ < ( แถว - - ฉัน ) ; เจ ++ )
{
ศาล << ' ' ;
}
สำหรับ ( ภายใน เค = 0 ; เค <= ฉัน ; เค ++ )
{
ศาล << ' ' << วาล ;
วาล = วาล * ( ฉัน - - เค ) / ( เค + 1 ) ;
}
ศาล << สิ้นสุด << สิ้นสุด ;
}
ศาล << สิ้นสุด ;
กลับ 0 ;
}
ผู้ใช้จะถูกขอให้กรอกจำนวนแถวสำหรับ Pascal's Triangle for loop ใช้เพื่อวนซ้ำแต่ละแถวโดยเริ่มจากแถวที่ 0 และวนซ้ำไปเรื่อยๆ จนกว่าจะถึงจำนวนแถวสูงสุดที่ผู้ใช้กำหนด มีการบวกช่องว่างสามช่องว่างระหว่างแต่ละตัวเลขเพื่อให้รูปสามเหลี่ยมมีรูปร่างที่ต้องการ for loop ใช้เพื่อรักษาจำนวนแถวและองค์ประกอบให้เท่ากันในบรรทัด จากนั้นจึงใช้สูตรสัมประสิทธิ์ทวินามเพื่อคำนวณค่าขององค์ประกอบต่างๆ ในรูปสามเหลี่ยม
ผู้ใช้ป้อนจำนวนแถวของสามเหลี่ยมเป็น 10 สามเหลี่ยมของ Pascal ตามพารามิเตอร์ที่ตั้งไว้จะถูกพิมพ์บนหน้าต่างคอนโซล
สามเหลี่ยมปาสคาลมุมขวา
นี่เป็นตัวอย่างโปรแกรมที่เขียนขึ้นเพื่อพิมพ์ Right Angled Pascal’s Triangle
#รวมโดยใช้ เนมสเปซ มาตรฐาน ;
เป็นโมฆะ พิมพ์ปาสคาล ( ภายใน n )
{
ภายใน อ๊าก [ n ] [ n ] ;
สำหรับ ( ภายใน เส้น = 0 ; เส้น < n ; เส้น ++ )
{
สำหรับ ( ภายใน ฉัน = 0 ; ฉัน <= เส้น ; ฉัน ++ )
{
ถ้า ( เส้น == ฉัน || ฉัน == 0 )
อ๊าก [ เส้น ] [ ฉัน ] = 1 ;
อื่น
อ๊าก [ เส้น ] [ ฉัน ] = อ๊าก [ เส้น - - 1 ] [ ฉัน - - 1 ] +
อ๊าก [ เส้น - - 1 ] [ ฉัน ] ;
ศาล << อ๊าก [ เส้น ] [ ฉัน ] << ' ' ;
}
ศาล << ' \n ' ;
}
}
ภายใน หลัก ( )
{
ภายใน n ;
ศาล << 'ป้อนจำนวนแถวสำหรับ Pascal's Triangle': ' ;
การกิน >> n ;
พิมพ์ปาสคาล ( n ) ;
กลับ 0 ;
}
ในซอร์สโค้ดนี้ ไฟล์ส่วนหัว
ผู้ใช้ป้อนเลข 6 หลายตัวสำหรับบรรทัดใน Pascal's Triangle และอัลกอริธึมจะดำเนินการเพื่อพิมพ์สามเหลี่ยมของ Pascal ที่มีมุมฉาก
บทสรุป
Pascal's Triangle ในภาษา C++ คืออาร์เรย์ของสัมประสิทธิ์ทวินามที่จัดเรียงเป็นรูปสามเหลี่ยม มีการประกาศอาร์เรย์เสริมที่สามารถจัดเก็บองค์ประกอบสำหรับรูปสามเหลี่ยมของตัวเลขที่กำหนดได้ จำนวนองค์ประกอบในแต่ละแถวจะเท่ากับจำนวนแถว และองค์ประกอบแรกและสุดท้ายของแต่ละแถวจะถูกตั้งค่าเป็น 1 ทุกรายการในบรรทัดคือค่าสัมประสิทธิ์ทวินาม และเลือกค่าของตัวเลขโดยใช้คุณสมบัติการบวก ในลักษณะที่ว่าทุกองค์ประกอบในรูปสามเหลี่ยมจะได้มาจากการบวกสององค์ประกอบด้านบนและด้านซ้ายของด้านบนด้วย