Untitled
#include<iostream> #include<iomanip> using namespace std; int main() { //Declaro variables escalares y arreglos int fila, colu, auxi, i, k; int bidi[100][100], uni[10000]; //Pido datos al usuario do { cout << "Ingrese el numero de filas: "; cin >> fila; if (fila < 0 || fila>100) { cout << "Error: El dato ingresado es incorrecto."<<endl << "Intente de nuevo, debe ser un numero mayor que 0 y menor o igual a 100."<<endl; } } while (fila < 0 || fila>100); do { cout << "Ingrese el numero de columnas: "; cin >> colu; if (colu < 0 || colu>100) { cout << "Error: El dato ingresado es incorrecto."<<endl << "Intente de nuevo, debe ser un numero mayor que 0 y menor o igual a 100."<<endl; } } while (colu < 0 || colu>100); //Relleno la matriz cout << "Ingrese el elemento: "<<endl; for (int i = 0; i < fila; i++) { for (int j = 0; j < colu; j++) { cout << "("<<i + 1<<"/"<<j + 1 << "): "; cin >> bidi[i][j]; } } //Transformo la matriz bidimensional a unidimensional k = 0; for (int i = 0; i < fila; i++) { for (int j = 0; j < colu; j++) { uni[k++] = bidi[i][j]; } } int juntos = fila * colu; //Aplico método de la burbuja for (int i = 0; i < juntos; i++) { for (int j = 0; j < juntos - 1; j++) { if (uni[j] > uni[j + 1]) { auxi = uni[j]; uni[j] = uni[j + 1]; uni[j + 1] = auxi; } } } //Transformo a arreglo bidimensional k = 0; for (int i = 0; i < fila; i++) { cout << "| "; for (int j = 0; j < colu; j++) { bidi[i][j] = uni[k++]; cout <<setw(4)<< bidi[i][j]<<" | "; } cout << endl; } return 0; }
Leave a Comment