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

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

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

Расположить в порядке убывания ненулевые элементы левого нижнего треугольника матрицы. Пишу в Dev C++ Не могу закончить программу, а именно вывести обратно в матрицу элементы, которые уже расположены по убыванию. Вот что удалось сделать по аналогу задания про матрицу:
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <time.h>
using namespace std;
 
int main(int argc, char *argv[])
{
int b[6][6],a[36],i,j,l,max,k,n,p;
srand ((unsigned) time ( NULL ));
for (i=0;i<6;i++)
for (j=0;j<6;j++)
b[i][j]=rand()/700-20+10;
printf("Matrica b:");
printf("\n");
for (i=0;i<6;i++)
{for (j=0;j<6;j++)
printf("%6d",b[i][j]);
printf("\n");}
printf("\n");
l=0;
for (i=0;i<6;i++)
for (j=0;j<6;j++)
if ((b[i][j]!=0) & (j<i)){a[l]=b[i][j];l++;}
printf("Matrica a:");
for (i=0;i<l;i++)
printf ("  %d",a[i]);
 
for (i=0;i<l;i++)
{max=a[i];
k=i;
for(p=i+1;p<l;p++)
if(a[p]>max)
{max=a[p];
k=p;}
a[k]=a[i];
a[i]=max;}
 
printf("\n");
printf("\n");
printf ("Posledovatel'nost' ubivanija: ");
for (i=0;i<l;i++)
printf ("  %d",a[i]);
getch();
return 0;
}

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

textual
Листинг программы
using namespace std;

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

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