Untitled
#include <iostream> // Incluir la biblioteca de entrada y salida estándar using namespace std; char menu(); void escribeVector(float* vec, int size); int main() { const int TAM=4; float v1[TAM]; char option = menu(); do { cout << "Opción seleccionada" << option << endl; switch(option) { case 'A': cout << "Opción A crear" << endl; cout << "Escribe los "<< TAM << " elementos del vector:" << endl; for(int i=0;i<TAM;i++){ cout << "Dime el elemento " << i << ": "; cin >>v1[i]; cin.ignore(); } cout << endl; break; case 'B': cout << "Opción B ver" << endl; escribeVector(v1, TAM); break; case 'C': cout << "Opción C - ordenar" << endl; cout << "Se empieza con " << endl; // START: ESto es solo para que lo veamos visualmente escribeVector(v1, TAM); // END: ESto es solo para que lo veamos visualmente for(int i=0;i<TAM;i++){ // este primer for va a comparar cada posición con el resto a la derecha cout << "Comparar el valor [" << i << "]: " << v1[i] <<" con: " << endl; for(int j=i+1;j<TAM;j++){ // este segunda se encarga de que cada uno de la derecha del priemr for se peuda compara cout << " * el valor [" << j << "]: " << v1[j] << "... " << endl; if (v1[j]<v1[i]) { // si entra aqui es porque los valores del siguiente son más pequeños y debe intercambiarlos cout << " !! como " << v1[j] << " es menor que " << v1[i] << " se intercambian..."; float temporal = v1[i]; // hace falta un temporal para no perder uno de los valores v1[i] = v1[j]; v1[j] = temporal; cout << " y el vector queda como "; // START: ESto es solo para que lo veamos visualmente escribeVector(v1, TAM); // END: ESto es solo para que lo veamos visualmente } } } cout << endl; break; default : cout << "Opción no válida, elige otra" << endl; break; } option = menu(); } while (option != 'D'); return 0; // Retornar 0 para indicar que el programa terminó correctamente } void escribeVector(float* vec, int size) { cout << "["; for(int i=0; i<size; i++){ cout << vec[i]; if (i < size-1) { cout << ", "; } } cout << "]"; cout << endl; } char menu() { char option; cout << endl; cout << "************ MENU ********************" << endl; cout << "* A.- Rellena" << endl; cout << "* B.- Ver" << endl; cout << "* C.- Ordenar" << endl; cout << "* D.- Salir" << endl; cout << "**************************************" << endl; cout << endl; cin >> option; return toupper(option); }
Leave a Comment