0% encontró este documento útil (0 votos)
3 vistas8 páginas

Code

Este documento es un código en C++ que implementa un sistema de menús para presentar diferentes algoritmos y estructuras de datos. Incluye opciones como Big O, varios métodos de ordenamiento, y técnicas de búsqueda, cada una con una breve descripción. El programa permite al usuario seleccionar una opción y proporciona información sobre el algoritmo seleccionado antes de volver al menú.
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
3 vistas8 páginas

Code

Este documento es un código en C++ que implementa un sistema de menús para presentar diferentes algoritmos y estructuras de datos. Incluye opciones como Big O, varios métodos de ordenamiento, y técnicas de búsqueda, cada una con una breve descripción. El programa permite al usuario seleccionar una opción y proporciona información sobre el algoritmo seleccionado antes de volver al menú.
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

#include <iostream>

#include <windows.h>

#include <iomanip>

#include <limits>

using namespace std;

// FUNCION PARA CAMBIAR COLORES

void color(int c){

SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), c);

// FUNCION PAUSA (CORREGIDA)

void pausa(){

color(7);

cout << "\n\nPresiona ENTER para continuar...";

[Link](numeric_limits<streamsize>::max(), '\n');

[Link]();

// TITULO PRINCIPAL

void titulo(){

color(11);

cout << "\n========================================================\n";

cout << " SISTEMA DE ALGORITMOS Y ESTRUCTURAS DE DATOS\n";

cout << "========================================================\n";


color(7);

// MENU

void menu(){

titulo();

color(14);

cout << left;

cout << setw(5) << "1." << "Programa Big O\n";

cout << setw(5) << "2." << "Ordenamiento Burbuja\n";

cout << setw(5) << "3." << "QuickSort\n";

cout << setw(5) << "4." << "Ordenamiento Insercion\n";

cout << setw(5) << "5." << "Merge Sort\n";

cout << setw(5) << "6." << "Ordenamiento Lineal\n";

cout << setw(5) << "7." << "Busqueda Secuencial\n";

cout << setw(5) << "8." << "Busqueda Binaria\n";

cout << setw(5) << "9." << "Busqueda Arbol Binario\n";

cout << setw(5) << "10." << "Arboles Optimos de Busqueda\n";

cout << setw(5) << "11." << "Arboles de Busqueda General\n";

cout << setw(5) << "12." << "Dispersion Hash\n";

cout << setw(5) << "13." << "Salir\n";

color(11);

cout << "\n========================================================\n";

color(10);

cout << "Seleccione una opcion: ";

color(7);
}

int main(){

int opcion;

do{

system("cls");

menu();

// Validación de entrada (corregida)

if (!(cin >> opcion)) {

[Link](); // limpia el estado de error

[Link](numeric_limits<streamsize>::max(), '\n');

opcion = 0; // opción inválida para repetir el ciclo

continue;

switch(opcion){

case 1:

system("cls");

titulo();

color(10);

cout << "\nPROGRAMA BIG O\n\n";

color(7);

cout << "Big O mide la complejidad de un algoritmo.\n\n";

cout << "Ejemplos:\n";


cout << "O(1) -> Tiempo constante\n";

cout << "O(n) -> Tiempo lineal\n";

cout << "O(n2) -> Tiempo cuadratico\n";

cout << "O(log n) -> Tiempo logaritmico\n";

pausa();

break;

case 2:

system("cls");

titulo();

color(10);

cout << "\nORDENAMIENTO BURBUJA\n\n";

color(7);

cout << "Metodo que compara elementos adyacentes.\n";

pausa();

break;

case 3:

system("cls");

titulo();

color(10);

cout << "\nQUICKSORT\n\n";

color(7);

cout << "Metodo rapido basado en pivotes.\n";

pausa();

break;

case 4:

system("cls");
titulo();

color(10);

cout << "\nORDENAMIENTO INSERCION\n\n";

color(7);

cout << "Inserta elementos en su posicion correcta.\n";

pausa();

break;

case 5:

system("cls");

titulo();

color(10);

cout << "\nMERGE SORT\n\n";

color(7);

cout << "Divide y combina listas ordenadas.\n";

pausa();

break;

case 6:

system("cls");

titulo();

color(10);

cout << "\nORDENAMIENTO LINEAL\n\n";

color(7);

cout << "Ordenamiento mediante recorrido secuencial.\n";

pausa();

break;

case 7:
system("cls");

titulo();

color(10);

cout << "\nBUSQUEDA SECUENCIAL\n\n";

color(7);

cout << "Busca elemento uno por uno.\n";

pausa();

break;

case 8:

system("cls");

titulo();

color(10);

cout << "\nBUSQUEDA BINARIA\n\n";

color(7);

cout << "Busca en arreglos ordenados.\n";

pausa();

break;

case 9:

system("cls");

titulo();

color(10);

cout << "\nARBOL BINARIO\n\n";

color(7);

cout << "Estructura jerarquica con nodos.\n";

pausa();

break;
case 10:

system("cls");

titulo();

color(10);

cout << "\nARBOLES OPTIMOS DE BUSQUEDA\n\n";

color(7);

cout << "Minimizan costo promedio de busqueda.\n";

pausa();

break;

case 11:

system("cls");

titulo();

color(10);

cout << "\nARBOLES DE BUSQUEDA GENERAL\n\n";

color(7);

cout << "Organizan datos de forma jerarquica.\n";

pausa();

break;

case 12:

system("cls");

titulo();

color(10);

cout << "\nDISPERSION HASH\n\n";

color(7);

cout << "Tecnica para acceder directamente a los datos mediante una funcion
hash.\n";
pausa(); // <-- CORREGIDO: faltaba la pausa

break;

case 13:

color(11);

cout << "\nSaliendo del sistema...\n";

color(7);

break;

default:

color(12);

cout << "\nOpcion no valida. Intente de nuevo.\n";

color(7);

pausa();

break;

} while(opcion != 13);

return 0;

También podría gustarte