どーも、みつおです。
学校の先生が二乗(にじょう)のことをじじょうって読んでて、滑舌が悪いだけだと思ってたけど、じじょうとも読めるらしいね。
問題
最初の10個の自然数について, その二乗の和は,
12 + 22 + … + 102 = 385最初の10個の自然数について, その和の二乗は,
(1 + 2 + … + 10)2 = 3025これらの数の差は 3025 – 385 = 2640 となる.
同様にして, 最初の100個の自然数について二乗の和と和の二乗の差を求めよ.
出典:Problem6
解答
using System; using System.Collections.Generic; using System.Linq; namespace Problem6 { class Program { static void Main(string[] args) { Console.WriteLine(Solve()); Console.ReadLine(); } private static int Solve() { int ret = 0; int no = 100; List<int> data = new List<int>(); List<int> powlist = new List<int>(); for (int i = 1; i <= no; i++) { //二乗のリスト powlist.Add((int)Math.Pow(i, 2)); data.Add(i); } //二乗の和 int powsum = powlist.Sum(); //和の二乗 int sum = data.Sum(); int sumpow = (int)Math.Pow(sum, 2); ret = sumpow - powsum; return ret; } } }
出力
25164150