Обнулить все элементы в строке после главной диагонали матрицы - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Дана действительная матрица квадратная матрица порядка n. Обнулить все элементы в строке после главной диагонали, если элемент на главной диагонали в этой строке положительный. Для обнуления элементов использовать подпрограмму

#include <stdio.h>
#include <malloc.h>
 
void main (void)
{
    int n, i, j;
    printf ("input size matrix n= ");
    scanf ("%d", &n);
    int **A=(int**)malloc(n*sizeof(int*));
    for (i=0; i<n; i++)
    {
        A[i] = (int*) malloc (n*sizeof(int));
        for (j=0; j<n; j++)
        {
            printf ("A [%f][%f]= ", i,j);
            scanf ("%f", &A[i][j]);
        }
????
    }
Блин, никто не знает(

Решение задачи: «Обнулить все элементы в строке после главной диагонали матрицы»

textual
Листинг программы
#include <stdio.h>
#include <stdlib.h>
 
void obnulalka (int **a,int n,int i) {
 int j;
 for (j=i+1; j<n; j++) a[i][j]=0;
}
 
void main (void)
{
    int n, i, j;
    printf ("input size matrix n= ");
    scanf ("%d", &n);
    int **A=(int**)malloc(n*sizeof(int*));
    for (i=0; i<n; i++)
    {
        A[i] = (int*) malloc (n*sizeof(int));
        for (j=0; j<n; j++)
        {
            printf ("A [%d][%d]= ", i+1,j+1);
            scanf ("%d", &A[i][j]);
        }
    }
 
    for (i=0; i<n; i++) if (A[i][i]>0) {
     obnulalka (A,n,i);
    }
 
    printf ("\nResult");
    for (i=0; i<n; i++) {
     printf ("\n");
     for (j=0; j<n; j++) printf ("%d ",A[i][j]);
    }
    system ("pause");
}

Объяснение кода листинга программы

В этом коде представлен алгоритм обнуления всех элементов в строке после главной диагонали матрицы. Вот список действий, которые выполняются в коде:

  1. Ввод размера матрицы. Пользователю предлагается ввести размер матрицы (строку и столбец).
  2. Выделение памяти под матрицу. Вектор динамически выделяется в памяти подмассивами, а затем объединяется в матрицу.
  3. Заполнение матрицы. Пользователю предлагается ввести все элементы матрицы.
  4. Проверка главной диагонали. Если главный элемент диагонали положительный, то выполняется обнуление.
  5. Обнуление элементов после главной диагонали. Функция obnulalka() обнуляет все элементы в строке после главной диагонали.
  6. Вывод результата. Результат выводится на экран.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 4.667 из 5
Похожие ответы