// Lab7.cpp : Defines the entry point for the console application. // #include "stdafx.h" struct Value{ int a; int b; int i; int j; int sum; }; int _tmain(int argc, _TCHAR* argv[]) { setlocale(0,"");//чтоб консоль писала по русски const int N = 5; const int M = 5; char mas[N][M]={ {'A', 'B', 'C', 'D', 'V'}, {'F', 'Q', 'C', 'C', 'V'}, {'F', 'B', 'C', 'D', 'H'}, {'S', 'S', 'D', 'V', 'H'}, {'S', 'X', 'D', 'B', 'H'}, }; Value value[N][M]; memset(value,0x00,sizeof(value)); char x0; for(int i=0;i<N;i++){ for(int j=0;j<M;j++){ x0 = mas[i][j]; for(int k=0;k<N;k++){ if(mas[i][k]==x0) value[i][j].a++; } for(int n=0;n<M;n++){ if(mas[n][j]==x0) value[i][j].b++; } value[i][j].i = i; value[i][j].j = j; value[i][j].sum = value[i][j].a + value[i][j].b; } } const int str=5; const int stolb=5; int i,j,a,c,e=1,d=100,x,z; Value temp; printf("До сортировки""\n\n"); for(i=0;i<str;i++) { for(j=0;j<stolb;j++) { printf("%i\t",value[i][j].sum); } printf("\n\n\n\n"); } printf("\n\n"); //Сортируем массив //_______________________________________________________________________________ for(c=0;c<=(str*stolb);c++)//колличество проходов { //в строках упорядочиваем //____________________________________________ for(i=0;i<str;i++) { for(j=0;j<stolb-1;j++) { if(value[i][j].sum>value[i][j+1].sum) { temp=value[i][j]; value[i][j]=value[i][j+1]; value[i][j+1]=temp; } } } //в столбах упорядочиваем //_____________________________________________ for(x=0;x<stolb;x++) { for(z=0;z<str-1;z++) { if(value[z][x].sum>value[z][x+1].sum) { temp=value[z][x]; value[z][x]=value[z][x+1]; value[z][x+1]=temp; } } } } //вывод на экран после сортировки //__________________________________________________________ printf("После сортировки по возрастанию""\n\n\n\n"); for(i=0;i<str;i++) { for(j=0;j<stolb;j++) { printf("%i\t",value[i][j].sum); } printf("\n\n\n\n"); } printf("i = %i, j = %i, sum = %i",value[4][4].i,value[4][4].j,value[4][4].sum); return 0; }