Матрица: Заменить нулями все элементы, расположенные на главной диагонали и выше её - C (СИ)

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

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

Сформировать матрицу S(12,12).Вывести матрицу.Заменить нулями все элементы, расположенные на главной диагонали и выше её.Вывести измененную матрицу.

Решение задачи: «Матрица: Заменить нулями все элементы, расположенные на главной диагонали и выше её»

textual
Листинг программы
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
#include<string.h>
#include<windows.h>
#include<math.h>
#include<time.h>
 
int main()
{
    int n,**arr;
    int i=0,j=0;
    
 
    //Динамическое выделение памяти     
    puts("Enter a size of array");
    scanf("%d",&n);
        
    arr=(int **)malloc(n*sizeof(int*));
        if(!arr)
            exit(1);
        for(int i=0;i<n;i++)
        {
            arr[i]=(int *)malloc(n*sizeof(int));
                if(!arr[i])
                    exit(1);
        }
 
    //Инициализация матрицы
        srand(time(NULL));
        for (i=0;i<n;i++)
            for(j=0;j<n;j++)
                {
                    arr[i][j]=rand()%100;
                        
                }
 
    //Вывод исходного массива
        for(i=0;i<n;i++)
        {
            for(j=0;j<n;j++)
            {
                printf("%2d ",arr[i][j]);
            }
            printf("\n");
        };
 
        //Обнуляем 
        for(i=0;i<n;i++)
        {
            for(j=0;j<n;j++)
            {
            if(i==j|| j>i)
            {
                arr[i][j]=0;
            }
            }
        }
        printf("\n");
 
        //Вывод нового массива
        for(i=0;i<n;i++)
        {
            for(j=0;j<n;j++)
            {
                printf("%2d ",arr[i][j]);
            }
            printf("\n");
        }
 
    
 
    getch();
    return 0;
}

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

В этом коде:

  1. Объявлены переменные:
    • n - размер матрицы;
    • arr - динамически выделяемая память под матрицу.
  2. Выполняется динамическое выделение памяти под матрицу с помощью функций malloc и calloc.
  3. Инициализируются случайные значения элементов матрицы с помощью функции rand.
  4. Выводится исходная матрица с помощью цикла for.
  5. Задаются условия для обнуления элементов главной диагонали и выше её.
  6. Обнуляются элементы главной диагонали и выше её.
  7. Выводится новая матрица с обнулёнными элементами.

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


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

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

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