This article is created to cover some programs in Python that print Pascal's Triangle in different-different ways. Here are the list of programs covered in this article:
But before going through these programs, understanding about Pascal's triangle is compulsory. Therefore let's discuss about it.
Pascal's Triangle looks like an equilateral triangle where each row gets created in following ways:
Here is a Pascal's Triangle of 4 rows:
1 1 1 1 2 1 1 3 3 1
To learn more about it, refer to Pascal's Triangle to get every required things about Pascal's Triangle such as structure of Pascal's triangle, how Pascal's triangle gets expanded, and many more things. But for now, the figure given below tells a lot about it:
The question is, write a Python program that prints Pascal's triangle of 5 rows. The program given below is the answer to this question. This program is created using user-based or self-created code. That is, this program doesn't uses any function or formula to do the task.
arr =  arrTemp =  arr.insert(0, 1) arr.insert(1, 1) i = 1 j = 0 for row in range(5): for col in range(4, row, -1): print(end=" ") for col in range(row+1): if row==0: print(end="1") else: if col==0 or col==row: print(end="1 ") else: arrTemp.insert(i, (arr[j]+arr[j+1])) print(arrTemp[i], end=" ") i = i+1 j = j+1 print() arrTemp.insert(i, 1) if row>1: i = 1 j = 0 arr[j] = 1 for j in range(1, row+1): arr.insert(j, arrTemp[i]) i = 1 j = 0
The snapshot given below shows the sample output produced by this Python program:
This is the program that takes help of function and formula to construct and print Pascal's triangle. To understand about formula while constructing the element of Pascal's triangle, must refer to the article provided above, that is a separate tutorial on Pascal's triangle.
def fact(num): f = 1 for i in range(1, num+1): f = f*i return f for i in range(5): for col in range(4, i, -1): print(end=" ") for col in range(i+1): val = int(fact(i)/(fact(col)*fact(i-col))) print(val, end=" ") print()
This program produces the same output as of previous program.
The question is, write a Python program that prints Pascal's triangle upto n rows. The value of n must be entered by user. Here is its answer:
import math print(end="Enter the Value of n: ") n = int(input()) for i in range(n): for col in range(n-1, i, -1): print(end=" ") for col in range(i+1): val = int(math.factorial(i)/(math.factorial(col)*math.factorial(i-col))) print(val, end=" ") print()
Here is its sample run with user input 7 as number of rows:
© Copyright 2021. All Rights Reserved.