50 lines
1.8 KiB
Python
50 lines
1.8 KiB
Python
|
import os
|
|||
|
|
|||
|
# Ищет набольшее число из файла /var/result/data.txt и сохраняет его вторую степень в /var/result/result.txt.
|
|||
|
# Пути к файлам
|
|||
|
input_file = '/var/result/data.txt'
|
|||
|
output_file = '/var/result/result.txt'
|
|||
|
|
|||
|
def find_largest_number_and_save_squared(input_file, output_file):
|
|||
|
try:
|
|||
|
# Проверяем существование входного файла
|
|||
|
if not os.path.exists(input_file):
|
|||
|
print(f"Файл {input_file} не найден.")
|
|||
|
return
|
|||
|
|
|||
|
# Чтение чисел из файла
|
|||
|
with open(input_file, 'r') as file:
|
|||
|
numbers = []
|
|||
|
for line in file:
|
|||
|
for word in line.split():
|
|||
|
try:
|
|||
|
numbers.append(float(word))
|
|||
|
except ValueError:
|
|||
|
continue
|
|||
|
|
|||
|
# Проверяем, что числа найдены
|
|||
|
if not numbers:
|
|||
|
print("В файле нет чисел.")
|
|||
|
return
|
|||
|
|
|||
|
# Находим наибольшее число
|
|||
|
largest_number = max(numbers)
|
|||
|
|
|||
|
# Вычисляем квадрат
|
|||
|
squared_number = largest_number ** 2
|
|||
|
|
|||
|
# Создаём директорию для файла, если её нет
|
|||
|
os.makedirs(os.path.dirname(output_file), exist_ok=True)
|
|||
|
|
|||
|
# Записываем квадрат в файл
|
|||
|
with open(output_file, 'w') as file:
|
|||
|
file.write(str(squared_number))
|
|||
|
|
|||
|
print(f"Наибольшее число: {largest_number}")
|
|||
|
print(f"Квадрат числа сохранён в {output_file}")
|
|||
|
except Exception as e:
|
|||
|
print(f"Ошибка: {e}")
|
|||
|
|
|||
|
|
|||
|
find_largest_number_and_save_squared(input_file, output_file)
|