奇数の自然数の立方の合計を求めるPHPプログラム
はじめに
本記事では、PHPを使って奇数の自然数の立方(3乗)の合計を求めるプログラムを紹介します。1、3、5、7…と続く奇数それぞれを3乗し、その総和を計算する方法を、サンプルコードとともにわかりやすく解説します。
サンプルコード
<?php
function sum_of_cubes_odd($limit)
{
$init_sum = 0;
for ($i = 1; $i <= $limit; $i++) {
$odd = 2 * $i - 1; // i番目の奇数
$init_sum += $odd * $odd * $odd;
}
return $init_sum;
}
print_r("最初の8個の奇数の自然数の立方の合計は ");
echo sum_of_cubes_odd(8);
?>
出力
最初の8個の奇数の自然数の立方の合計は 8128
コードの解説
まず、sum_of_cubes_odd という名前の関数を定義します。引数 $limit には、対象とする奇数の個数を渡します。
関数の中では、初期値 0 の変数 $init_sum を用意し、for ループで i 番目の奇数「2×i−1」を順に取り出します。たとえば $i が 1 なら 1、2 なら 3、3 なら 5 となります。取り出した奇数を3回掛けて立方を計算し、その都度 $init_sum に加算していきます。
ループが終了したら合計値を返します。最後に引数として 8 を渡して関数を呼び出し、結果を画面に出力します。このとき、1³+3³+5³+7³+9³+11³+13³+15³ = 8128 という計算が行われています。
補足:数式による検証
最初の n 個の奇数の立方和は、次の公式で求められることが知られています。
合計 = n² × (2n² − 1)
n = 8 を代入すると、64 × 127 = 8128 となり、プログラムの出力と一致します。これにより、コードが正しく動作していることを確認できます。
まとめ
PHPでは、シンプルな for ループだけで特定の条件を満たす自然数の立方和を簡単に計算できます。偶数版が必要な場合は、奇数を生成する部分を「2×i」に変更するだけで同じロジックを流用できるため、さまざまな場面で応用できます。
-
Pythonで最初のn個の奇数の合計を求めるプログラム
数値 n が与えられたとき、最初の n 個の正の奇数の合計を求めることを考えます。たとえば、入力が 7 の場合、出力は 49 になります。これは [1 + 3 + 5 + 7 + 9 + 11 + 13] = 49 となるためです。解決の手順この問題は、以下のステップに従って解くことができます。n が 0 と等しい場合は、0 を返します。変数を初期化します。sum := 1、count := 0、temp := 1count < n - 1 の間、次の処理を繰り返します。temp := temp + 2(次の奇数を生成)sum := sum + temp(合計に加算)count := c
-
Pythonで自然数の合計を求める3つの方法【while文・for文・sum関数】
Pythonでは、自然数の合計を求める方法がいくつかあります。この記事では、whileループ、forループ、そして組み込み関数sum()を使った3つの方法を、具体的なコード例とともにわかりやすく解説します。 方法1:whileループを使う whileループを使用すると、変数iの値を1ずつ増やしながら、その値を累積的に加算していくことができます。以下の例では、最初の10個の自然数(1から10まで)の合計を計算しています。 s,i=0,0 n=10 while i<n: i=i+1 s=s+i print ("sum of first 10 natural num