Вопрос задан 24.02.2025 в 06:56. Предмет Информатика. Спрашивает Ясенко Даниил.

Дан массив, содержащий 70 целых чисел. Опишите алгоритм , позволяющий найти и вывести наименьшее содержащиеся. в массиве положительное число, десятичная запись которого. оканчивается цифрой 7. Гарантируется, что в массиве есть такое число.

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

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

Отвечает Колтакова Ксюша.

Чтобы найти наименьшее положительное число, которое заканчивается цифрой 7, можно использовать следующий алгоритм:

Алгоритм:

  1. Инициализация переменной для хранения наименьшего числа: Создадим переменную, которая будет хранить наименьшее число, подходящее под условия задачи. Пусть это будет переменная min_num, и на начальном этапе присвоим ей значение, равное большому числу, например, положительной бесконечности или максимально возможному значению в массиве.

  2. Проход по массиву: Перебираем все элементы массива и проверяем следующие условия для каждого числа:

    • Число должно быть положительным (т.е. больше 0).
    • Последняя цифра числа должна быть 7.

    Для того чтобы проверить, заканчивается ли число на цифру 7, можно воспользоваться операцией взятия остатка от деления на 10. То есть, если число x оканчивается на 7, то условие будет следующим: x % 10 == 7.

  3. Обновление наименьшего числа: Если текущее число удовлетворяет условиям (положительное и заканчивается на 7), то сравниваем его с текущим минимальным числом. Если текущее число меньше, чем min_num, то обновляем значение переменной min_num.

  4. Вывод результата: После того как весь массив будет обработан, переменная min_num будет содержать наименьшее положительное число, заканчивающееся на 7. Выводим его на экран.

Реализация на Python:

python
# Пример массива arr = [12, 17, 37, 5, 87, 24, 27, 47, 7, 77]

# Инициализация переменной для хранения минимального числа min_num = float('inf') # присваиваем бесконечность, чтобы любое число было меньше

# Проход по всем элементам массива for num in arr: if num > 0 and num % 10 == 7: # проверяем, что число положительное и оканчивается на 7 min_num = min(min_num, num) # обновляем минимальное число

# Выводим результат print(min_num)

Пояснение:

  • min_num = float('inf') используется для того, чтобы на начальном этапе любое число из массива оказалось меньше, чем inf. Это позволяет нам корректно найти минимальное значение, подходящее под условия задачи.
  • Условие num > 0 and num % 10 == 7 проверяет, что число положительное и оканчивается на цифру 7. Если оба условия выполняются, то мы обновляем переменную min_num, если текущее число меньше предыдущего минимального.
  • В конце алгоритма выводится наименьшее найденное число.

Этот алгоритм будет работать за O(n), где n — количество элементов в массиве. Так как в задаче указано, что в массиве всегда есть подходящее число, решение гарантированно найдет результат.

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

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

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

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