Расположить в порядке убывания ненулевые элементы левого нижнего треугольника матрицы - 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;
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д