Вопрос задан 15.06.2023 в 17:43. Предмет Информатика. Спрашивает Николаева Милена.

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

кото¬рых равен t. Нужен код на c#
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Атрощенко Александра.

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;

       }

   }

}

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Для решения данной задачи на C# можно использовать следующий код:

```csharp using System;

class Program { static void Main(string[] args) { int n = 100; // заданное число n int t = 10; // заданная сумма цифр t

for (int i = 1; i < n; i++) { int sum = GetDigitSum(i); // получаем сумму цифр числа i

if (sum * sum == t) { Console.WriteLine(i); // выводим число, у которого квадрат суммы цифр равен t } } }

static int GetDigitSum(int number) { int sum = 0;

while (number != 0) { sum += number % 10; // получаем последнюю цифру числа и добавляем ее к сумме number /= 10; // удаляем последнюю цифру числа }

return sum; } } ```

В данном коде мы используем цикл `for`, чтобы перебрать все числа от 1 до `n-1`. Для каждого числа мы вычисляем сумму его цифр с помощью метода `GetDigitSum`. Затем мы проверяем, равен ли квадрат этой суммы заданному числу `t`. Если равенство выполняется, мы выводим число на экран.

Например, если `n = 100` и `t = 10`, то код выведет все числа, у которых квадрат суммы цифр равен 10 и которые меньше 100.

Примечание: В данном коде предполагается, что входные значения `n` и `t` являются корректными и положительными целыми числами. Если это не всегда гарантировано, то необходимо добавить соответствующую проверку и обработку ошибок.

Надеюсь, это поможет вам решить задачу! Если у вас возникнут дополнительные вопросы, пожалуйста, не стесняйтесь задавать их.

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос