Está en la página 1de 5

INFORMÁTICA CUELLAR, Gabriel PRE-ESTUDIO 7

3°Act.7-Matrices: Ordenamiento de filas

DESARROLLE LAS SIGUIENTES ACTIVIDADES

1. Compile y ejecute el programa de ordenamiento de filas según una columna para los
siguientes casos de prueba: Capture y pegue la pantalla d ejecución de ambos casos:

2. Desarrolle el ejercicio básico “D” del TP7.

DESARROLLO

1. a)
INFORMÁTICA CUELLAR, Gabriel PRE-ESTUDIO 7

b)

2. Ejercicio básico “D” del TP7:

Para el caso descripto, ordenar decrecientemente (x falsa burbuja) las filas de acuerdo a los
valores de la última columna. Muestre la matriz resultante. (Vea: Apuntes Undi43_Matrices
pág.17 y video 3 de Pre-Estudio).

//LIBRERÍAS.

#include <iostream>

using namespace std;

/* Para el caso descripto, ordenar decrecientemente (x falsa burbuja) las filas de acuerdo a

los valores de la última columna. Muestre la matriz resultante.(Vea: Apuntes Undi43_Matrices


pág.17 y video 3 de Pre-Estudio). */

//FUNCIÓN PRINCIPAL.

int main()

//DECLARACIÓN DE VARIABLES.

float torre[5][6]; //Matriz de números reales. Cap.Máx. 5 filas y 6


columnas.
INFORMÁTICA CUELLAR, Gabriel PRE-ESTUDIO 7

int M, N; //Cantidad de filas y columnas y ocupadas.

int i, j, k; //Índices de ciclos.

int aux; //Auxiliar para intercambiar filas.

//Entrada de datos, recorriendo columna x columna.

cout<<" Cuantas columnas cargara en la torre? [MAX. 6]: ";cin>>N;

while(N<2 or N>6)

cout<<"\n ERROR. Ingrese nuevamente [MAX. 6]: "; cin>>N;

cout<<" Cuantas filas cargara en la torre? [MAX. 5]: ";cin>>M;

while(M<2 or M>5)

cout<<"\n ERROR. Ingrese nuevamente [MAX. 5]: "; cin>>M;

cout<<"\n";

//Carga de datos, recorriendo columna x columna.

for(j=1; j<=N; j++) //Indice de columnas

for(i=1; i<=M; i++) //Indice de filas.

cout<<" Ingrese las horas trabajadas para la lampara ["<<i<<"]


["<<j<<"] = "; cin>>torre[i][j];

}
INFORMÁTICA CUELLAR, Gabriel PRE-ESTUDIO 7

//Salida en pantalla, recorriendo fila x fila.

cout<<"\n Torre de lamparas en HORAS TRABAJADAS: \n\n";

for(i=1; i<=M; i++) //Indice de filas.

for(j=1; j<=N; j++) //Indice de columnas

cout<<torre[i][j]<<" "<<"\t";

cout<<"\n";

//Ordenamiento de filas según última columna.

for(i=1; i<=M-1; i++) //Indice de Filas. Falsa Burbuja.

for(j=i+1; j<=M; j++) //Indice de filas. Falsa Burbuja.

if(torre[j][N] < torre[i][N])

//Intercambio de fila i con fila j.

for(k=1; k<=N; k++) //Indice de columnas.

aux = torre[i][k];

torre[i][k] = torre[j][k];

torre[j][k] = aux;

}
INFORMÁTICA CUELLAR, Gabriel PRE-ESTUDIO 7

cout<<"\n Se ordenara la torre por la ULTIMA COLUMNA.";

cout<<"\n Torre MODIFICADA de lamparas en HORAS TRABAJADAS: \n\


n";

for(i=1; i<=M; i++) //Indice de filas.

for(j=1; j<=N; j++) //Indice de columnas

cout<<torre[i][j]<<" "<<"\t";

cout<<"\n";

cout<<"\n\n";

return 0;

También podría gustarte