Предмет: Информатика, автор: Аноним

Помощь пожалуйста! Даю 100 баллов!
Надо сделать это задание на языке "C"
Пожалуйста сделать все по заданию!


Те кто будет писать бред чтобы забрать баллы, улетают в бан!

Приложения:

Ответы

Автор ответа: leprekon882
1

В первой программе вы можете использовать циклы для заполнения массива Y исходными данными и открыть файл для записи с помощью функции fopen. После этого вы можете использовать функцию fprintf для записи данных в файл.

#include <iostream>

#include <cstdio>

using namespace std;

const int N = 10;

int main()

{

   // Массив Y

   int Y[N][N];

   // Заполнение массива Y исходными данными

   for (int i = 0; i < N; i++)

   {

       for (int j = 0; j < N; j++)

       {

           Y[i][j] = i * N + j;

       }

   }

   // Открытие файла для записи

   FILE* fp = fopen("matrix.txt", "w");

   if (fp == nullptr)

   {

       cout << "Error opening file" << endl;

       return 1;

   }

   // Запись данных в файл

   for (int i = 0; i < N; i++)

   {

       for (int j = 0; j < N; j++)

       {

           fprintf(fp, "%d ", Y[i][j]);

       }

       fprintf(fp, "\n");

   }

   // Закрытие файла

   fclose(fp);

   return 0;

}

Во второй программе вы можете открыть файл с помощью функции fopen и считать данные с помощью функций fscanf или fgets. атем вы можете использовать циклы для обработки данных и замены элементов матрицы Y, расположенных выше главной диагонали, максимальным элементом, расположенным на главной диагонали.

#include <iostream>

#include <cstdio>

#include <algorithm>

using namespace std;

const int N = 10;

int main()

{

   // Массив Y

   int Y[N][N];

   // Открытие файла для чтения

   FILE* fp = fopen("matrix.txt", "r");

   if (fp == nullptr)

   {

       cout << "Error opening file" << endl;

       return 1;

   }

   // Считывание данных из файла

   for (int i = 0; i < N; i++)

   {

       for (int j = 0; j < N; j++)

       {

           fscanf(fp, "%d", &Y[i][j]);

       }

   }

   // Закрытие файла

   fclose(fp);

   // Определение максимального элемента на главной диагонали

   int max_elem = Y[0][0];

   for (int i = 1; i < N; i++)

   {

       max_elem = max(max_elem, Y[i][i]);

   }

   // Замена элементов матрицы Y, расположенных выше главной диагонали,

   // максимальным элементом, расположенным на главной диагонали

   for (int i = 0; i < N; i++)

   {

       for (int j = 0; j < N; j++)

{

if (i < j)

{

Y[i][j] = max_elem;

}

}

}

// Вывод обработанной матрицы Y

for (int i = 0; i < N; i++)

{

   for (int j = 0; j < N; j++)

   {

       cout << Y[i][j] << " ";

   }

   cout << endl;

}

return 0;

}

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