Está en la página 1de 13

INSTITUTO POLITÉCNICO NACIONAL

ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ELÉCTRICA

INGENIERÍA EN COMUNICACIONES Y ELECTRÓNICA

PROGRAMACIÓN ORIENTADA A
OBJETOS
EJERCICIO “Mínimos Cuadrados”

Grupo: 2CM26
Integrantes:
- Sanchez Duran José Fernando

Profesor: María Ivonne Gutiérrez Villalba


Fecha: 29/ Abril/ 2020
Lo primero que realizamos es crear una clase de nombre punto la cual, posterior a
su creación, de forma manual la cambiamos de clase a una estructura, para ello,
hacemos uso de la palabra struct. Recordemos que las estructuras nos permiten
agrupar varios datos, que mantengan algún tipo de relación, aunque sean de distinto
tipo, permitiendo manipularlos todos juntos, usando un mismo identificador, o cada
uno por separado. Una vez cambiada, agregamos los métodos y atributos
correspondiente. (Figura 1). Hay que tener en cuenta que estos métodos y atributos
al formar parte de una estructura, todos estos serán datos públicos, esto quiere decir
que cualquier otra clase puede acceder a ello.

Figura 1. Creamos una estructura y declaramos sus atributos y métodos.


Definimos el constructor por omisión, constructor parametrizado y el destructor de
la estructura punto. (Figura 2).

Figura 2. Constructor por omisión, parametrizado y destructor de la estructura


punto.
Ahora, definimos estos métodos de la estructura los guales se encargaron de
solicitar al usuario los datos x, y para un punto. Los muestra en la pantalla y guarda
estos datos ingresados en una hoja de Excel. (Figura 3).

Figura 3. Definimos los métodos.


Como podemos observar en la función guardar punto, los datos ingresados por el
usuario se guardaran en un archivo llamado MINIMOS con extensión .csv, (una hoja
de Excel). Es importante señalar que estos métodos serán utilizados (invocados)
después por una clase.
Posterior a ello, creamos una clase de nombre MINIMOS con los siguiente atributos
y métodos. (Figura 4).
Figura 4. Métodos y atributos de la clase Minimos.
Definimos el constructor por omisión y destructor de la clase. (Figura 5).

Figura 5. Constructor y destructor de la clase minimos.


El el archivo .cpp de nuestra clase, definimos las tareas que van a realizar los
métodos de esta clase. (Figura 6-).
Figura 6. Metodo LEER_PUNTOS de la clase minimos.
Como podemos observar, creamos un vector de tipo dinámico con el tamaño del
numero de puntos que el usuario va a ingresar. Con ayuda de un ciclo for,
solicitamos al usuario ingrese los datos que solicita el programa (x,y) llamando a la
función leer punto de la estructura punto (antes creada). Como esta es un dato de
tipo público, la clase minimos puede acceder a ella.

Figura 7. Metodo LEER_PUNTOS de la clase minimos.


Como su nombre lo dice, este metodo es el encargado de imprimir los datos
ingresados por el usuario, para ello, con un cliclo for que pasa por todos los espacios
de memoria del vector dinámico creado anteriormente, haciendo llamar a la función
ver punto de la estructura punto el cual imprime estos datos en pantalla.

Figura 8. Metodo GUARDAR_PUNTOS de la clase minimos.


Para este método, los datos ingresados por el usuario serán guardados en una hoja
de Excel, en este método hacemos llamar a la función guardar punto de la estructura
punto el cual es el encargado del guardado de estos datos. Con ayuda de un ciclo
for, guardamos dato por dato hasta completar con el numero de espacios en el
vector dinámico.
Figura 9. Metodo ECUACION DE LA RECTA de la clase minimos.
Con los puntos ingresados por el usuario, calculamos la ecuación de la recta, para
ello, como se muestra en la Figura 9, hacemos los cálculos correspondientes he
imprimimos los resultados.

Figura 10. Metodo INTERPOLAR de la clase minimos.


Solicitamos al usuario ingrese un valor de x, para hacer la interpolación de la
ecuación de la recta anteriormente calculado. (Figura 9).
Figura 11. Metodo COEFICIENTE_CORRELACION de la clase Minimos.
Con los puntos ingresados, calculamos el coeficiente de correlación de la recta
formada por medio de mínimos cuadrados.
En el main de nuestro programa, creamos un objeto llamado min1. (Figura 12).

Figura 12. Objeto de la clase Minimos.


Para llamar a nuestras funciones (como se mostró en la figura 4), creamos un menú
el cual realice y mande a llamar a cada una de estas funciones, el cual no dejara de
reproducirse hasta que el usuario solicite salir del programa, para lograr esto,
hacemos uso de un ciclo do-while. (Figura 13).
Figura 13. Opciones del menú.
Y con ayuda de las condiciones if y else, mandamos a llamar a las funciones del
menú, siempre y cuando este haya sido solicitado por el usuario. (Figura 14).
Figura 14. Condiciones a cumplir para que la función se ejecute.
Si el usuario no ingresa la opción salir (g), el menú seguirá ejecutándose sin parar.
Una vez que corremos el programa (Figura 15).

Figura 15. Observamos las opciones del menú.


Ingresando la opción “a” tenemos:

Figura 16. Opción a.


El programa hace una pausa para continuar, una vez que este continua, volvemos
a tener el menú principal.

Como ya se comentó anteriormente, esto seguirá sucediendo hasta que el usuario


solicite la opción g de salir.
Ingresando la opción “b” tenemos:
Figura 17. Opción b.
Observamos los datos que anteriormente hemos ingresado.
Ingresando la opción “c” tenemos:

Figura 18. Opción c.


El programa a creado la hoja de Excel y guardado ahí los datos que el usuario ha
ingresado. Si esta hoja ya existía, el programa guarda estos datos después de los
últimos ingresados.
Ingresando la opción “d” tenemos:

Figura 19. Opción d.


El programa ha calculado la ecuación de la recta con los datos anteriormente
ingresado por el usuario.
Ingresando la opción “e” tenemos:

Figura 20. Opción e.


Nos solicita ingresemos un valor de x para interpolar la ecuación de la recta ya
calculada anteriormente.
Ingresando la opción “f” tenemos:

Figura 21. Opción f.


Nos muestra el valor del coeficiente de correlación de los puntos ingresados.
Ingresando la opción “g” tenemos:

Figura 22. Opción g.


Como se ha estado comentando, hasta no ingresar la opción g de salir, el programa
no termina.
Para el caso cuando ingresamos una opción que no se encuentra entre las mostrada
en el menú el programa nos muestra lo siguiente:

Figura 23. Opción no valida.


Como noes muestra la imagen, el programa nos indica que esta opción no es valida
y vuelve a correr el menú.
Una vez que abrimos el archivo que el programa creo para guardar todos los datos
ingresados obtenemos:

Figura 24. Datos guardados en celdas de Excel.


Por último, graficamos estos puntos en una gráfica de dispersión de puntos.

Figura 25. Grafica de dispersión de puntos.

También podría gustarte