Дано натуральное число n. Можно ли представить в виде суммы квадратов трех натуральных чисел? - C#
Формулировка задачи:
Здравствуйте.
Задача:
Решение:
Вопрос: а как проверить теперь, совпадает ли решение, если цифры переставить? Т.е. учесть эту часть задачи "Решения, которые получаются перестановкой x, y и z, считать совпадающими."
Огромное спасибо
Дано натуральное число n. Можно ли представить в виде суммы квадратов трех натуральных чисел? Если можно, то вывести на экран такие тройки x, y и z натуральных чисел. Решения, которые получаются перестановкой x, y и z, считать совпадающими.
using System; namespace Test1 { class Program { static void Main(string[] args) { Console.WriteLine("Введите число N"); int n = Convert.ToInt32(Console.ReadLine()); int x = 0, y = 0, z = 0; for (int i = 0; i < n; i++) for (int j = 0; j < n; j++) for (int k = 0; k < n; k++) if (n == (i * i + j * j + k * k)) { x = i; y = j; z = k; Console.WriteLine("{0} {1} {2}",x,y,z); } } } }
Решение задачи: «Дано натуральное число n. Можно ли представить в виде суммы квадратов трех натуральных чисел?»
textual
Листинг программы
int p = n/3; for (int i = 0; i < p; i++) for (int j = p; j < 2*p; j++) for (int k = 2*p; k < n; k++) if (n == (i * i + j * j + k * k)) { x = i; y = j; z = k; Console.WriteLine("{0} {1} {2}",x,y,z); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д