Вопрос задан 12.04.2025 в 22:01. Предмет Информатика. Спрашивает Друченко Миша.

Напишите программу, которая вводит натуральные числа a и b и выводит все простые числа в диапазоне от a до b .
Входные данные:
Входная строка содержит два натуральных числа, a и b . Гарантируется, что a ≤ b .
Выходные данные
Программа должна вывести в одной строке через пробел все простые числа на отрезке [ a , b ] . Если таких чисел нет, программа должна вывести 0.

Перейти к ответам

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

Отвечает Игумнов Юрий.

Для решения задачи напишем программу, которая принимает два натуральных числа aa и bb, и находит все простые числа в диапазоне от aa до bb. Простым числом называется число, которое больше 1 и делится только на 1 и само на себя.

Алгоритм работы программы:

  1. Вводим два числа aa и bb.
  2. Проверяем каждое число в диапазоне от aa до bb, является ли оно простым:
    • Если число меньше 2, оно не является простым.
    • Проверяем, делится ли число на любые числа от 2 до квадратного корня из текущего числа (включительно).
  3. Если число простое, добавляем его в список простых чисел.
  4. Если в диапазоне нет простых чисел, выводим 0.

Код программы на Python:

python
import math

# Ввод чисел a и b a, b = map(int, input().split())

# Функция для проверки, является ли число простым def is_prime(n): if n < 2: return False for i in range(2, int(math.sqrt(n)) + 1): if n % i == 0: return False return True

# Список для хранения простых чисел prime_numbers = []

# Поиск простых чисел в диапазоне от a до b for num in range(a, b + 1): if is_prime(num): prime_numbers.append(num)

# Вывод результата if prime_numbers: print(" ".join(map(str, prime_numbers))) else: print(0)

Пример работы программы:

Ввод:

10 20

Вывод:

11 13 17 19

Ввод:

22 28

Вывод:

23

Ввод:

15 15

Вывод:

0

Объяснение:

  1. В первом примере простые числа в диапазоне от 10 до 20: 11, 13, 17, 19.
  2. Во втором примере единственное простое число в диапазоне от 22 до 28 — это 23.
  3. В третьем примере в диапазоне от 15 до 15 нет простых чисел, поэтому программа выводит 0.

Программа эффективна за счёт проверки делимости до квадратного корня числа и подходит для работы с небольшими диапазонами.

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

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

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

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