В
Все
М
Математика
О
ОБЖ
У
Українська мова
Х
Химия
Д
Другие предметы
Н
Немецкий язык
Б
Беларуская мова
М
Музыка
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
У
Українська література
Р
Русский язык
Ф
Французский язык
П
Психология
О
Обществознание
А
Алгебра
М
МХК
Г
География
И
Информатика
П
Право
А
Английский язык
Г
Геометрия
Қ
Қазақ тiлi
Л
Литература
И
История
zajigalka2001
zajigalka2001
05.05.2020 04:49 •  Информатика

Составить программу в языке Си Даны размерность квадратной матрицы и сама матрица целых чисел.
Отсортировать по возрастанию элементы матрицы на побочной диагонали. (в правом верхнем углу матрицы стоит наименьший элемент)
Вывести полученную матрицу на экран.
Заранее

Показать ответ
Ответ:
viloverbe
viloverbe
19.12.2020 01:23

#include <stdio.h>

#include <stdlib.h>

#include <locale.h>

#include <time.h>

main()

{

   setlocale(0,"");

   srand(time(NULL));

   int size;

   printf("Введите размер квадратной матрицы: ");

   scanf("%d", &size);

   int arr[100][100];

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

   {

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

       {

           arr[i][j] = rand() % 100 - 30;

           printf("%d\t", arr[i][j]);

       }

       printf("\n");

   }

   for(int j = 0; j < size - 1; j++)

   {

       for(int i = j + 1; i < size; i++)

       {

           if (arr[j][size - j - 1] > arr[i][size - i - 1])

           {

               int temp = arr[j][size - j - 1];

               arr[j][size - j - 1] = arr[i][size - i - 1];

               arr[i][size - i - 1] = temp;

           }

       }

   }

   printf("\n");

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

   {

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

       {

           printf("%d\t", arr[i][j]);

       }

       printf("\n");

   }

}

Объяснение:

Максимальный размер матрицы - 100х100

#include <stdio.h> // Библиотека ввода - вывода

#include <stdlib.h> // Библиотека для рандома

#include <locale.h> // Библиотека для локализации

#include <time.h> // Библиотека для работы со временем

main()

{

   setlocale(0,""); // Локализация

   srand(time(NULL)); // Обнуление времени (каждый раз новые числа)

   int size; // Целочисленная переменная для хранения размера квадратной матрицы

   printf("Введите размер квадратной матрицы: "); // Вывод сообщения в консоль

   scanf("%d", &size); // Ввод размера матрицы с клавиатуры

   int arr[100][100]; // Создание матрицы

   for(int i = 0; i < size; i++) // Идём по матрице

   {

       for (int j = 0; j < size; j++) // Идём по матрице

       {

           arr[i][j] = rand() % 100 - 30; // Заполнение матрицы случайными числами

           printf("%d\t", arr[i][j]); // Вывод

       }

       printf("\n"); // Перенос на следующую строку

   }

   for(int j = 0; j < size - 1; j++) // Идём по матрице

   {

       for(int i = j + 1; i < size; i++) // Идём по матрице

       {

           if (arr[j][size - j - 1] > arr[i][size - i - 1]) // Если элемент побочной диагонали больше последующего элемента побочной диагонали

           {

               int temp = arr[j][size - j - 1]; // Перестановка

               arr[j][size - j - 1] = arr[i][size - i - 1]; // Перестановка

               arr[i][size - i - 1] = temp; // Перестановка

           }

       }

   }

   printf("\n"); // Перенос на следующую строку

   for(int i = 0; i < size; i++) // Идём по матрице

   {

       for (int j = 0; j < size; j++) // Идём по матрице

       {

           printf("%d\t", arr[i][j]); // Вывод

       }

       printf("\n"); // Перенос на следующую строку

   }

}

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота