Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonでパスカルの三角形を生成するプログラム


数nがあるとします。パスカルの三角形を最大n行まで生成する必要があります。パスカルの三角形は次のようになります-

Pythonでパスカルの三角形を生成するプログラム

パスカルの三角形のプロパティは、前の行の隣接する2つの数値の合計であり、2番目の行のすぐ下に配置されている数値の値です。たとえば、行6の最初の10は行5の4と6の合計であり、2番目の10は行5の2つの数値6と4の合計です。

したがって、入力がn =5の場合、出力は

になります。
    1
   1 1
  1 2 1
 1 3 3 1
1 4 6 4 1

これを解決するには、次の手順に従います-

  • 0からn+1の範囲のiについては、
    • 0からn-iの範囲のjについては、
      • 空白を1つ印刷する
    • C:=1
    • 1からi+1の範囲のjについては、
      • Cを印刷してから、1つの空白スペースを印刷します
      • C:=(C *(i --j)/ j)の商
    • 次の行に移動

理解を深めるために、次の実装を見てみましょう-

def solve(n):
   for i in range(n+1):
      for j in range(n-i):
         print(' ', end='')

      C = 1
      for j in range(1, i+1):
         print(C, ' ', sep='', end='')
         C = C * (i - j) // j
      print()

n = 5
solve(n)

入力

5

出力

    1
   1 1
  1 2 1
 1 3 3 1
1 4 6 4 1

  1. Pythonプログラムのカレンダー

    Python カレンダーと呼ばれる組み込みモジュールがあります カレンダーを操作します。 カレンダーについて学習します この記事のモジュール。 カレンダーの週 モジュールは月曜日に開始します 日曜日に終了します 。モジュールカレンダーはグレゴリオ暦に従います カレンダー。 カレンダーの便利な方法をいくつか見てみましょう モジュール。 年間カレンダーの取得 特定の年のカレンダーを取得する必要がある場合は、クラス calendar.calendar(year)のインスタンスを作成します。 そしてそれを印刷します。一例を見てみましょう。 例 # importing the calendar m

  2. クイックソート用のPythonプログラム

    この記事では、以下に示す問題ステートメントの解決策について学習します。 問題の説明 −配列が与えられたので、クイックソートの概念を使用して配列を並べ替える必要があります ここでは、最初に配列をパーティション化し、別のパーティションを並べ替えて、並べ替えられた配列を取得します。 次に、以下の実装のソリューションを見てみましょう- 例 # divide function def partition(arr,low,high):    i = ( low-1 )    pivot = arr[high] # pivot element   &nb