Даны натуральные числа n, t. Получить все нату¬ральные числа, меньшие n, квадрат cуммы цифр кото¬рых равен t. Нужен код на c#

sebasogo sebasogo    2   06.03.2022 10:14    1

Ответы
Margo11111122223332 Margo11111122223332  06.03.2022 10:20

using System;

namespace ConsoleApp

{

   internal class Program

   {

       private static void Main()

       {

           Console.Write("n = ");

           int n = int.Parse(Console.ReadLine());

           Console.Write("t = ");

           int t = int.Parse(Console.ReadLine());

           int counter = 0;

           // цикл по всем натуральным числам, меньших n

           for (int i = 1; i < n; ++i)

           {

               int sum = GetDigitsSum(i); // получаем сумму цифр

               int sqSum = sum * sum; // вычисляем квадрат этой суммы

               if (sqSum == t)

               {

                   counter++;

                   Console.WriteLine(i);

               }

           }

           if (counter == 0)

               Console.WriteLine("Nothing found");

       }

       private static int GetDigitsSum(int num)

       {

           int sum = 0;

           while (num > 0)

           {

               sum += num % 10; // добавляем в сумму последнюю цифру

               num /= 10; // отсекаем последнюю цифру

           }

           return sum;

       }

   }

}

ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика