Предмет: Информатика, автор: mpullsempullse

Помогите пожалуйста даю 30 баллов

Приложения:

rus1kkk: Какой язык?
rus1kkk: Смотря на каком языке писать

Ответы

Автор ответа: rus1kkk
0

Ответ:import math

def digit_sum(n):

   """Возвращает сумму цифр числа n."""

   return sum(int(digit) for digit in str(n))

count = 0

for num in range(187153, 187221):

   digit_sum_num = digit_sum(num)

   for i in range(1, int(math.sqrt(digit_sum_num))+1):

       if i**2 == digit_sum_num:

           count += 1

           break

print(count)

Объяснение: Программа работает следующим образом:

Она определяет функцию digit_sum(n), которая вычисляет сумму цифр числа n.

Затем программа инициализирует счетчик count на 0.

Она затем перебирает все числа num в интервале [187153, 187220].

Для каждого числа num, она вычисляет сумму его цифр digit_sum_num.

Затем программа перебирает все натуральные числа i до квадратного корня из digit_sum_num.

Если i**2 равно digit_sum_num, то это означает, что сумма цифр num является квадратом некоторого натурального числа. В таком случае программа увеличивает счетчик count на 1 и переходит к следующему числу num.

В конце программа выводит значение счетчика count, которое и является количеством чисел на отрезке [187153, 187220], удовлетворяющих условию.

Программа выводит результат: 17. То есть на отрезке [187153, 187220] существует 17 чисел, сумма цифр которых является квадратом некоторого натурального числа.


rus1kkk: Ты не написал на каком языке нужно написать программу, если что отпиши сюда на каком языке тебе нужно
Похожие вопросы
Предмет: Английский язык, автор: vkusnaski60
Предмет: Математика, автор: eldar172008