ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Actividad 1 Estructura de datos


Enviado por   •  28 de Junio de 2021  •  Prácticas o problemas  •  2.895 Palabras (12 Páginas)  •  71 Visitas

Página 1 de 12

[pic 1]

Actividad de Aprendizaje 01:


Tipos de Dato primitivos y Tipos de Dato Estructurados

Alumno

Crespo Romo Dafne Jaqueline 

Profesor 

Alfredo Gutiérrez Hernández

Estructura de datos I

Sección D12

Considero que en esta primera actividad aprendí muchísimo, pues yo nunca había utilizado los “Integer Limits” para los rangos de cada uno de los tipos de dato, lo mismo para las matrices y funciones, puesto que en semestres pasados no alcanzamos a ver estos temas.

Para los números aleatorios negativos fue un poco complicado, pero al final encontré que si ponemos como límite 2001 entre 100 para tener 2 decimales, -100 para tener también negativos funciona perfecto.

Sin embargo, lo más difícil fue hacerlo en POO, tuve que basarme de muchísimas fuentes en internet para poder lograr lo que llevo de este trabajo, viendo vídeos para aprender un poco más sobre cada uno de los términos que se utilizan en POO.

Como conclusión solo me queda añadir que hay muchas cosas que necesito volver a repasar y muchas más aún que no conozco y necesito aprender y practicar.

Para empezar, hice todo el programa normal en un solo .cpp que es de la manera en que yo se hacerlo.

Primero hice que en el main  mandé al header Menu.h para visualizar el menú en pantalla.

Comencé creando mi menú con las 3 opciones “a, b y c” utilizando un “do – while” para que el menú funcionara hasta que el usuario tecleara la letra “c”. Utilizando switch hice cada apartado del menú con las opciones “a, b y c” y con su respectivo break para cada una.

Para el case “a” manda al header “Tabla.h” donde tuve que utilizar la función “sizeof” y los “Integer Limits” para los rangos. Sizeof nos da los bytes, por lo cual tuve que multiplicar los bytes por 8 para que nos diera los bits y los resultados fueron guardados en variables que utilicé en la tabla, puse todo alineado ayudándome del “setw” y utilicé los Integer Limits para poder sacar los valores mínimos y máximos.

Terminando la opción “a” nos regresa al menú en donde sigue case “b”, el cual nos manda al header “Matriz.h” en donde primero nos valida que el usuario teclee un número del 3 al 10 o sino nos dirá que el número no es válido, después si el número si es válido se le pide al usuario dar una dimensión para las matrices, mínimo 3 y máximo 10. Utilizamos la función “srand” para obtener números aleatorios, para lograr que nos diera negativos intenté con algunas funciones y formas que encontré en internet, pero al final lo que me funcionó fue poner como límite 2001 entre 100 para tener 2 decimales, -100 para tener también negativos y funciona perfecto. Entonces se generan dos matrices aleatorias, una vez creadas se hace multiplicación de esas dos matrices, así como la suma y se imprimen dos matrices más, una con el producto de las matrices y la otra con la suma de las matrices y se imprimen en pantalla. Terminando esto, nos regresa al menú de opciones y si se presiona la tecla “c”, termina el programa y nos arroja un mensaje diciendo “bye”.

Código fuente

Main.cpp

#include <iostream>

#include "Menu.h"

using namespace std;

int main() {

    Menu menu;

    setlocale(LC_CTYPE,"Spanish");

    menu.imprimirMenu();

    return 0;

}

Menu.h

#ifndef MENU_H_INCLUDED

#define MENU_H_INCLUDED

#include <climits>

#include <iomanip>

#include <float.h>

#include <cstdlib>

#include "Tabla.h"

#include "Matriz.h"

using namespace std;

class Menu {

private:

    Tabla tabla;

    Matriz matriz;

public:

    void imprimirMenu() {

        char opcionMenu;

        do {

            cout<<"a. Tamaño y rangos de los Tipos de Dato Primitivos"<<endl;

            cout<<"b. Ejemplo de uso de Tipo de dato Estructurado"<<endl;

            cout<<"c. Salir"<<endl;

            cout<<"Que opción de menu deseas realizar? " <<endl;

            cin>>opcionMenu;

            if (opcionMenu=='a' || opcionMenu=='b' || opcionMenu=='c' ) {

                switch (opcionMenu) {

                case 'a':

                    tabla.imprimirTabla();

                    break;

                case 'b':

                    matriz.imprimirMatrices();

                    break;

                case 'c':

                    cout<<"Bye"<<endl;

                    break;

                default:

                    cout<<"Opción no válida"<<endl;

                }

            } else {

                cout <<"Opción no valida" <<endl;

            }

            if (opcionMenu!='c') {

                cout<<endl<<"Presione entrar para continuar...";

                cin.get();

                cin.get();

                system("cls");

            }

        } while(opcionMenu!='c');

...

Descargar como (para miembros actualizados) txt (11 Kb) pdf (380 Kb) docx (326 Kb)
Leer 11 páginas más »
Disponible sólo en Clubensayos.com