Ordenar uma Matriz bidimensional por colunas é tarefa fácil usando o método aplicado neste programa,
A matriz é do tipo float e a ordenação é pelo método da bolha,
sabemos que tem outros métodos mais este é um dos mais fácil de imprementar. O código é muito fácil de entender,
como todos os outros que já postei, porque são indicados a iniciantes em linguagem c.
Veja abaixo algumas imagens do programa em execução:
#include <stdio.h>
#include<conio2.h>
float mat_riz [8] [3] = {{10.2, 14.8, 11.4},
{9.5, 15.3, 8.9},
{8.6, 14.3, 21.6},
{9.7, 16.5, 19.2},
{6.1, 17.4, 27.5},
{7.7, 16.1, 3.4},
{8.3, 17.1, 7.8},
{7.3, 15.9, 33.8}};
void Matriz_Bidimensional(){
int i, ord; float aux;
int main();
ord = 0;
textcolor(LIGHTRED);gotoxy(29,3);printf("ORDENANDO MATRIZ BIDIMENSIONAL");
textcolor(LIGHTCYAN);gotoxy(33,5);printf("sa_sp10@hotmail.com");
textcolor(LIGHTBLUE);gotoxy(27,7);printf("ESTA E A MATRIZ [ 0 ] NAO ORDENADA");
gotoxy(23,9);textcolor(YELLOW);
for(i = 0; i < 8; i++)
printf(" %.1f ", mat_riz [i] [0]);
getche();
textcolor(LIGHTBLUE);gotoxy(27,11);printf("ESTA E A MATRIZ [ 1 ] NAO ORDENADA");
gotoxy(20,13);textcolor(YELLOW);
for(i = 0; i < 8; i++)
printf(" %.1f ", mat_riz [i] [1]);
getche();
textcolor(LIGHTBLUE);gotoxy(27,15);printf("ESTA E A MATRIZ [ 2 ] NAO ORDENADA");
gotoxy(20,17);textcolor(YELLOW);
for(i = 0; i < 8; i++)
printf(" %.1f ", mat_riz [i] [2]);
getche();
while(ord == 0){
ord = 1;
for(i = 0; i < 7 ; i++){
if( mat_riz [i] [0] > mat_riz [(i + 1)] [0]){
aux = mat_riz [i] [0];
mat_riz [i] [0] = mat_riz [(i + 1)] [0];
mat_riz [(i + 1 )] [0] = aux;
ord = 0;
}
}
for(i = 0; i < 7 ; i++){
if( mat_riz [i] [1] > mat_riz [(i + 1)] [1]){
aux = mat_riz [i] [1];
mat_riz [i] [1] = mat_riz [(i + 1)] [1];
mat_riz [(i + 1 )] [1] = aux;
ord = 0;
}
}
for(i = 0; i < 7 ; i++){
if( mat_riz [i] [2] > mat_riz [(i + 1)] [2]){
aux = mat_riz [i] [2];
mat_riz [i] [2] = mat_riz [(i + 1)] [2];
mat_riz [(i + 1 )] [2] = aux;
ord = 0;
}
}
}
system("cls");
textcolor(LIGHTRED);gotoxy(27,3);printf("ORDENANDO MATRIZ BIDIMENSIONAL");
textcolor(LIGHTBLUE);gotoxy(33,5);printf("sa_sp10@hotmail.com");
textcolor(LIGHTGREEN);gotoxy(27,7);printf("ESTA E A MATRIZ [ 0 ] ORDENADA");
gotoxy(22,9);textcolor(YELLOW);
for(i = 0; i < 8; i++)
printf(" %.1f ", mat_riz [i] [0]);
getche();
textcolor(LIGHTGREEN);gotoxy(27,11);printf("ESTA E A MATRIZ [ 1 ] ORDENADA");
gotoxy(18,13);textcolor(YELLOW);
for(i = 0; i < 8; i++)
printf(" %.1f ", mat_riz [i] [1]);
getche();
textcolor(LIGHTGREEN);gotoxy(27,15);printf("ESTA E A MATRIZ [ 2 ] ORDENADA");
gotoxy(18,17);textcolor(YELLOW);
for(i = 0; i < 8; i++)
printf(" %.1f ", mat_riz [i] [2]);
textcolor(LIGHTRED);gotoxy(35,21);printf("\aO ROCCO AGRADECE");
getche();
}
int main(){
system ("title ORDENANDO MATRIZ BIDIMENSIONAL");
Matriz_Bidimensional();
}
A matriz é do tipo float e a ordenação é pelo método da bolha,
sabemos que tem outros métodos mais este é um dos mais fácil de imprementar. O código é muito fácil de entender,
como todos os outros que já postei, porque são indicados a iniciantes em linguagem c.
Veja abaixo algumas imagens do programa em execução:
#include <stdio.h>
#include<conio2.h>
float mat_riz [8] [3] = {{10.2, 14.8, 11.4},
{9.5, 15.3, 8.9},
{8.6, 14.3, 21.6},
{9.7, 16.5, 19.2},
{6.1, 17.4, 27.5},
{7.7, 16.1, 3.4},
{8.3, 17.1, 7.8},
{7.3, 15.9, 33.8}};
void Matriz_Bidimensional(){
int i, ord; float aux;
int main();
ord = 0;
textcolor(LIGHTRED);gotoxy(29,3);printf("ORDENANDO MATRIZ BIDIMENSIONAL");
textcolor(LIGHTCYAN);gotoxy(33,5);printf("sa_sp10@hotmail.com");
textcolor(LIGHTBLUE);gotoxy(27,7);printf("ESTA E A MATRIZ [ 0 ] NAO ORDENADA");
gotoxy(23,9);textcolor(YELLOW);
for(i = 0; i < 8; i++)
printf(" %.1f ", mat_riz [i] [0]);
getche();
textcolor(LIGHTBLUE);gotoxy(27,11);printf("ESTA E A MATRIZ [ 1 ] NAO ORDENADA");
gotoxy(20,13);textcolor(YELLOW);
for(i = 0; i < 8; i++)
printf(" %.1f ", mat_riz [i] [1]);
getche();
textcolor(LIGHTBLUE);gotoxy(27,15);printf("ESTA E A MATRIZ [ 2 ] NAO ORDENADA");
gotoxy(20,17);textcolor(YELLOW);
for(i = 0; i < 8; i++)
printf(" %.1f ", mat_riz [i] [2]);
getche();
while(ord == 0){
ord = 1;
for(i = 0; i < 7 ; i++){
if( mat_riz [i] [0] > mat_riz [(i + 1)] [0]){
aux = mat_riz [i] [0];
mat_riz [i] [0] = mat_riz [(i + 1)] [0];
mat_riz [(i + 1 )] [0] = aux;
ord = 0;
}
}
for(i = 0; i < 7 ; i++){
if( mat_riz [i] [1] > mat_riz [(i + 1)] [1]){
aux = mat_riz [i] [1];
mat_riz [i] [1] = mat_riz [(i + 1)] [1];
mat_riz [(i + 1 )] [1] = aux;
ord = 0;
}
}
for(i = 0; i < 7 ; i++){
if( mat_riz [i] [2] > mat_riz [(i + 1)] [2]){
aux = mat_riz [i] [2];
mat_riz [i] [2] = mat_riz [(i + 1)] [2];
mat_riz [(i + 1 )] [2] = aux;
ord = 0;
}
}
}
system("cls");
textcolor(LIGHTRED);gotoxy(27,3);printf("ORDENANDO MATRIZ BIDIMENSIONAL");
textcolor(LIGHTBLUE);gotoxy(33,5);printf("sa_sp10@hotmail.com");
textcolor(LIGHTGREEN);gotoxy(27,7);printf("ESTA E A MATRIZ [ 0 ] ORDENADA");
gotoxy(22,9);textcolor(YELLOW);
for(i = 0; i < 8; i++)
printf(" %.1f ", mat_riz [i] [0]);
getche();
textcolor(LIGHTGREEN);gotoxy(27,11);printf("ESTA E A MATRIZ [ 1 ] ORDENADA");
gotoxy(18,13);textcolor(YELLOW);
for(i = 0; i < 8; i++)
printf(" %.1f ", mat_riz [i] [1]);
getche();
textcolor(LIGHTGREEN);gotoxy(27,15);printf("ESTA E A MATRIZ [ 2 ] ORDENADA");
gotoxy(18,17);textcolor(YELLOW);
for(i = 0; i < 8; i++)
printf(" %.1f ", mat_riz [i] [2]);
textcolor(LIGHTRED);gotoxy(35,21);printf("\aO ROCCO AGRADECE");
getche();
}
int main(){
system ("title ORDENANDO MATRIZ BIDIMENSIONAL");
Matriz_Bidimensional();
}
Nenhum comentário:
Postar um comentário
Observação: somente um membro deste blog pode postar um comentário.