Написать программу на Python
1) Ввести файл F. К элементам файла не кратным трём прибавить остаток от деления этого числа на три. Файл вывести до и после преобразования

2) Ввести два файла f1 и f2, вывести их. Сформировать из четных компонент файлов квадратные матрицы максимально возможного размера, соответственно, a1 и a2 . Файлы и матрицы вывести.

Ответы

Ответ дал: evgenukevgen5
1

Ответ:Програма для обробки файлу F:

def process_file(file_name):

   # Відкриваємо файл для читання

   with open(file_name, 'r') as file:

       numbers = file.readlines()  # Зчитуємо всі числа з файлу

   print("Файл до преобразования:")

   print(numbers)

   # Відкриваємо файл для запису

   with open(file_name, 'w') as file:

       for number in numbers:

           number = int(number)

           if number % 3 != 0:

               number += number % 3

           file.write(str(number) + '\n')

   # Відкриваємо файл знову для читання та виводимо його після преобразовання

   with open(file_name, 'r') as file:

       new_numbers = file.readlines()

   print("Файл після преобразования:")

   print(new_numbers)

# Виклик функції для обробки файлу F

file_name = input("Введіть назву файлу F: ")

process_file(file_name)

Програма для обробки файлів f1 і f2 та формування матриць a1 і a2:

def process_files(file1, file2):

   # Відкриваємо файл f1 для читання

   with open(file1, 'r') as f1:

       numbers1 = f1.readlines()

   # Відкриваємо файл f2 для читання

   with open(file2, 'r') as f2:

       numbers2 = f2.readlines()

   print("Файл f1:")

   print(numbers1)

   print("Файл f2:")

   print(numbers2)

   # Формуємо матрицю a1 з четних чисел з файлу f1

   even_numbers1 = [int(num) for num in numbers1 if int(num) % 2 == 0]

   size1 = int(len(even_numbers1) ** 0.5)  # Розмір квадратної матриці

   a1 = [even_numbers1[i:i + size1] for i in range(0, len(even_numbers1), size1)]

   # Формуємо матрицю a2 з четних чисел з файлу f2

   even_numbers2 = [int(num) for num in numbers2 if int(num) % 2 == 0]

   size2 = int(len(even_numbers2) ** 0.5)  # Розмір квадратної матриці

   a2 = [even_numbers2[i:i + size2] for i in range(0, len(even_numbers2), size2)]

   print("Матриця a1:")

   for row in a1:

       print(row)

   print("Матриця a2:")

   for row in a2:

       print(row)

# В

Объяснение:


netfilft: Сделаешь ещё одно задание?
Похожие вопросы