【Python】1から100まで、1から1000までの和を計算する方法

【Python】1から100まで、1から1000までの和を計算する方法

Pythonで1から100までの和、1から1000までの和を計算する方法

for文の基本

Pythonのfor文は、指定された範囲内の要素を順番に処理するために使用されます。最も基本的な構文は次の通りです。

for i in range(start, stop, step):
    # 繰り返し処理する内容

ここで、range()関数は繰り返しを行う範囲を指定します。例えば、range(1, 101)は1から100までの整数を生成します。

次のコードは、1から10までの数値を順番に出力する例です。

for i in range(1, 11):
    print(i)

出力は次のようになります:

1
2
3
4
5
6
7
8
9
10

1から100までの和の計算

次に、for文を使って1から100までの数値の和を計算してみましょう。

この問題を解決するためには、1から100までの数値を順番に加算する必要があります。以下のように実装できます:

total = 0
for i in range(1, 101):
    total += i
print(total)

このコードは、range(1, 101)で1から100までの数値を生成し、それらを一つずつ加算しています。最終的なtotalには、1から100までの和が格納されます。

出力は次の通りです:

5050

1から1000までの和の計算

次に、1から1000までの数値の和を計算してみましょう。これも同様にfor文を使って計算できます。

total = 0
for i in range(1, 1001):
    total += i
print(total)

このコードは、range(1, 1001)で1から1000までの数値を生成し、それらを順番に加算しています。

出力は次の通りです:

500500

最適化された方法

1から100や1から1000までの和を計算する場合、for文を使う方法以外にも、より効率的な方法があります。例えば、数学的な公式を使って和を計算する方法です。

1からnまでの和は次の公式で計算できます:

和 = n * (n + 1) / 2

これを使うと、1から100までの和は次のように計算できます:

n = 100
total = n * (n + 1) // 2
print(total)

この方法は、for文を使うよりも計算が高速で、特にnが大きい場合に有効です。

同様に、1から1000までの和も公式を使って計算できます:

n = 1000
total = n * (n + 1) // 2
print(total)

公式を使った場合の出力も次の通りです:

500500

for文を使う方法は理解を深めるために有用ですが、大規模なデータに対しては公式を使用することが効率的です。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です