Вопрос задан 07.11.2023 в 06:53. Предмет Информатика. Спрашивает Ахмедов Мухаммад.

Инженеру для расчетов необходима программа, которая позволяет быстро получить наибольший делитель

введенного числа. То есть самое большое число, на которое введенное поделится без остатка (не считая само себя, разумеется). Вот пример: число 21 делится без остатка на числа 1, 3, 7. Число 7 из них самое большое, значит, оно и является наибольшим делителем числа 21. Напишите алгоритм, который запросит у пользователя число, а затем выведет на экран наибольший делитель этого числа. Обратите внимание, что запускать программу заново после каждого введенного числа крайне неудобно. Поэтому ваша программа должна сразу после ввода числа и подсчета его делите предлагать ввести следующее, и так бесконечно
0 0
Перейти к ответам

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

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

Ответ:

while True:

   number = int(input('Введите число: '))

   i = 2

   while i < number:

       if number % i == 0:

           number = int(number / i)

       i = i + 1

   print('Наибольший делитель данного числа: ', number)


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

Я могу помочь вам написать программу, которая находит наибольший делитель введенного числа. Вот возможный алгоритм на языке Python:

# Задаем бесконечный цикл while True: # Запрашиваем у пользователя число n = int(input("Введите число: ")) # Проверяем, не является ли число единицей или нулем if n == 1 or n == 0: # Выводим сообщение, что у этих чисел нет делителей print("У числа", n, "нет делителей, кроме себя.") else: # Инициализируем переменную для хранения наибольшего делителя max_divisor = 1 # Перебираем все возможные делители от 2 до корня из n for i in range(2, int(n**0.5) + 1): # Проверяем, делится ли число n на i без остатка if n % i == 0: # Обновляем наибольший делитель, если i больше текущего значения max_divisor = max(max_divisor, i) # Обновляем наибольший делитель, если n/i больше текущего значения max_divisor = max(max_divisor, n // i) # Выводим наибольший делитель print("Наибольший делитель числа", n, "равен", max_divisor)

0 0

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

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

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

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