Давайте разберем задачу пошагово и поймем, как мы можем её решить.
Задача
У нас есть число ( N ), которое обозначает количество действительных чисел, и далее идут ( N ) действительных чисел. Необходимо создать и вывести массив чисел, у которых дробная часть меньше, чем дробная часть последнего числа из данного массива. Числа в новом массиве должны сохранять порядок их появления в исходном массиве.
Пошаговое решение
Ввод данных:
- Сначала мы считываем количество чисел ( N ).
- Затем считываем ( N ) действительных чисел и сохраняем их в массив.
Определение дробной части последнего числа:
- Извлекаем последнее число из массива.
- Вычисляем дробную часть последнего числа. Это можно сделать, вычтя целую часть числа из самого числа.
Формирование нового массива:
- Создаем пустой массив для хранения подходящих чисел.
- Проходим по всем числам в оригинальном массиве и проверяем их дробные части.
- Если дробная часть числа меньше, чем дробная часть последнего числа, добавляем его в новый массив.
Вывод результата:
Реализация на Python
Теперь, рассмотрим пример кода на Python, который выполняет описанные шаги:
# Чтение количества чисел
N = int(input())
# Чтение массивов
numbers = []
for _ in range(N):
number = float(input())
numbers.append(number)
# Получаем дробную часть последнего числа
last_number = numbers[-1]
fraction_last = last_number - int(last_number)
# Создаем новый массив
result = []
for number in numbers:
fraction = number - int(number)
if fraction < fraction_last:
result.append(number)
# Вывод результата
print(result)
Пример работы кода
Рассмотрим случай, когда вводим следующее:
6
3.14
-9.00001
2.71828
3.099999
0.18
13.4
Число ( N = 6 ).
Вводимые числа: [3.14, -9.00001, 2.71828, 3.099999, 0.18, 13.4].
Последнее число — 13.4, его дробная часть 0.4.
Проверяем дробные части всех чисел:
- Для
3.14: дробная часть 0.14 < 0.4 — добавляем.
- Для
-9.00001: дробная часть 0.99999 < 0.4 — добавляем.
- Для
2.71828: дробная часть 0.71828 < 0.4 — не добавляем.
- Для
3.099999: дробная часть 0.099999 < 0.4 — добавляем.
- Для
0.18: дробная часть 0.18 < 0.4 — добавляем.
- Для
13.4: дробная часть 0.4 < 0.4 — не добавляем.
В итоге получим массив: [3.14, -9.00001, 3.099999, 0.18].
Таким образом, мы получили правильный результат [3.14, -9.00001, 3.099999, 0.18], который соответствует вашему примеру.