• Составить программу на С++ одной программой, в которой
    1) организовать ввод квадратной матрицы размера nxn из целых чисел;
    2) возвести в квадрат все отрицательные элементы матрицы;
    3) переставить нулевые элементы первой строки матрицы в ее начало;
    4) организовать ввод и вывод матрицы в виде отдельных функций.

Ответы 1

  • #include <stdio.h>

    /* организовать ввод и вывод матрицы в виде отдельных функций. */

    void scanMatrix(unsigned n, int matrix[n][n])

    {

       printf("Enter matrix elements, separated by spaces:");

       for (unsigned i = 0; i < n; i++)

       {

           for (unsigned j = 0; j < n; j++)

           {

               scanf("%d", &matrix[i][j]);

           }

       }

    }

    void printMatrix(unsigned n, int matrix[n][n])

    {

       printf("These are matrix elements:");

       for (unsigned i = 0; i < n; i++)

       {

           for (unsigned j = 0; j < n; j++)

           {

               printf("%d ", matrix[i][j]);

           }

           printf("");

       }

    }

    int main()

    {

       unsigned n;

       /* организовать ввод квадратной матрицы размера nxn из целых чисел; */

       printf("Enter matrix dimension: ");

       scanf("%u", &n);

       int matrix[n][n];

       scanMatrix(n, matrix);

       /* возвести в квадрат все отрицательные элементы матрицы; */

       for (unsigned i = 0; i < n; i++)

       {

           for (unsigned j = 0; j < n; j++)

           {

               if (matrix[i][j] < 0)

               {

                   matrix[i][j] *= matrix[i][j];

               }

           }

       }

       /* переставить нулевые элементы первой строки матрицы в ее начало; */

       unsigned lastReplacableIndex = 0;

       for (unsigned i = 1; i < n; i++)

       {

           if (matrix[0][i] == 0)

           {

               int temp = matrix[0][lastReplacableIndex];

               matrix[0][lastReplacableIndex] = matrix[0][i];

               matrix[0][i] = temp;

               lastReplacableIndex++;

           }

       }

       printMatrix(n, matrix);

    }

  • Добавить свой ответ

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years