Sei sulla pagina 1di 9

División de Ciencias Exactas Ingeniería y Tecnología (DCEIT)

Fundamentos de Programación
Profa.. Adriana Camargo Ruiz

Unidad 1. Evidencia de aprendizaje. “Paradigmas y metodología de la


programación”

JORGE MIGUEL GONZÁLEZ CASTILLO

Grupo: 003

Fecha de Entrega: 22/07/19


INTRODUCCIÓN

A continuación se presenta el trabajo en el cual se resume lo que hemos aprendido


durante estas primeras tres semanas de la materia de Fundamentos de
Programación, en donde tratamos, damos puntos de vista y aplicamos los
conocimientos adquiridos en este periodo de tiempo. Programación y programa,
metodología y paradigmas de los lenguajes de programación, así como la
realización de algoritmos, su representación escrita y gráfica, y su comprobación
son los temas en esta Evidencia de Aprendizaje.

Desarrollaremos nuestro propio ejemplo de un algoritmo escribiendo el respectivo


pseudocódigo y diagrama de flujo, así como también la prueba de escritorio, tan
importante para verificar que esté correcto nuestro algoritmo.

Finalmente se concluye con el análisis personal de la importancia de la metodología


de programación, así como también la adecuada delimitación del problema a
resolver y la posterior validación de la solución. Igualmente una introspección con
la dificultad para poder seguir e implementar cada etapa de la metodología de la
programación.
¿Qué es un lenguaje de programación?

Un lenguaje de programación es una serie de instrucciones que los programadores


usan para dar indicaciones a la computadora. Estas instrucciones están
compuestas por caracteres y símbolos combinados entre sí y poseen ciertas reglas
o sintaxis predefinidos, así como de semántica que no es más que la forma en que
se van a interpretar las sentencias.
Existen lenguajes máquina, que son cadenas de números que finalmente se
reducen a unos y ceros y que son muy difíciles de comprender para los
programadores; lenguajes ensambladores, o de segunda generación, los cuales
utilizan abreviaturas del inglés para representar operaciones elementales y los
cuales ya utilizan “programas traductores” que convierten el lenguaje ensamblador
a lenguaje máquina; y lenguajes de alto nivel, llamados de tercera generación, los
cuales ya son mucho más fáciles de entender, ya que son muy parecidos al lenguaje
cotidiano (inglés), y contienen la notación matemática común.
¿Qué es un programa?

Son secuencias de instrucciones ordenadas que las computadoras procesan como


datos y que las guían a través de acciones ordenadas específicas, generando un
resultado.
¿Qué es la programación?

Es la acción de escribir o dar instrucciones a un computador o dispositivos con


microprocesador por medio de algún lenguaje de programación para que ejecute y
dé salida a resultados.
¿Por qué es importante escribir programas?

Es importante ya que sin estos las computadoras simple y sencillamente no tienen


sentido, no servirían mas que de pisa papeles o adornos de escritorio. Los
programas son los que direccionan el hardware y les indica que hacer. También es
a través de los programas que el usuario puede interactuar con los computadores o
con otros usuarios en cualquier otra parte del mundo.
¿Qué son los paradigmas de programación?

Son las “filosofías” que determinan cómo o de qué manera vamos a programar , es
decir, el tipo o estilo de programación a la hora de escribir el código, la forma de
abordar el problema y dar resultados.
¿Cuáles son los paradigmas de programación que se conocen?

Algunos de los paradigmas de programación que se conocen están clasificados de


la siguiente manera:

-En el enfoque imperativo y declarativo están el paradigma funcional, paradigma


lógico, programación reactiva y los lenguajes descriptivos.
-Los que se enfocan en la estructura y la organización de los programas, es decir,
la programación estructurada, modular, orientada a objetos, orientada a eventos, y
programación genérica.

-Finalmente están los paradigmas asociados a la concurrencia y los sistemas de


tipado.

¿Cuál es o cuáles son los paradigmas de programación que están en auge en


la actualidad?

Sin duda el paradigma más usado en la actualidad es el orientado a objetos, aunque


dependerá mucho de las necesidades y prioridades del proyecto a realizar. Por otro
lado la programación estructurada se utiliza mucho en la educación cuando se está
aprendiendo a programar.

¿Por qué es importante saber qué son los paradigmas en programación y sus
características?

Es muy importante conocer los paradigmas ya que después de conocer el problema


que vamos a resolver a fondo, hay que saber la mejor manera de resolverlo de
acuerdo a los recursos con los que contamos, presupuesto, tiempo, etc. Y de esta
manera sabremos el paradigma más adecuado a nuestras necesidades. Existen
casos en los que se ha resuelto el problema pero se pudo hacer de manera más
rápida o ahorrando pasos innecesarios y evitarse horas de trabajo sin sentido si se
hubiera utilizado otro paradigma al tratar de resolver el problema; y por eso es muy
importante conocer cada uno de los paradigmas y sus características ya que en la
creación de proyectos profesionales esto significa perdida de recursos muy
importantes como dinero.

2. Menciona algún programa que hayas utilizado en tu trabajo, en casa,


etcétera y explica para que te sirvió y la importancia de su utilización.

En la actualidad utilizamos programas todo el tiempo tanto en la computadora como


en el celular, algunos muy básicos y otros más complejos. Por lo tanto, me gustaría
mencionar uno de los primeros que aprendí a utilizar cuando iba en la preparatoria
en el lejano año de 1998. Hablo de Microsoft Word, en su versión de Office 95, y
que, si mal no recuerdo, igualmente corría exclusivamente sobre el sistema
operativo Windows 95. Obviamente, a partir de entonces, Word se ha vuelto un
programa indispensable a lo largo de mi vida académica y laboral, debido a que es
el programa casi casi oficial para crear documentos y archivos de texto y aunque en
la actualidad hay una variedad de opciones alternativas, la mayoría de las personas
sigue usando Word, además estas alternativas se basan en la interfaz y
características de Word. Creo que también fue grande la contribución de Word a la
masificación de las computadoras ya que antes de la popularización de este
programa las personas usaban las maquinas de escribir para la creación de
documentos.

3. Investiga y explica un caso de la vida cotidiana en el que puedas desarrollar


un programa (Debe ser sencillo, concreto y realizable). Puedes retomar el
programa mencionado en el punto 2.

Debido a mis ocupaciones, necesito un pequeño programa que me ayude a verificar


rápidamente si los ejercicios de divisiones que le mandan de tarea a mi hija los hizo
correctamente incluyendo el residuo ya que la calculadora solo proporciona los
cocientes.

3. Analiza el problema planteado e identifica los datos de entrada y salida que


se desea obtener.
Datos de entrada: Dividendo y divisor
Datos de salida: Cociente y residuo

4. Considera la descripción de las fases de la metodología de programación,


básicamente: a. Planteamiento del problema. b. Análisis del problema. c.
Diseño del algoritmo
a. Diseñar algoritmo que permita ejecutar un programa que devuelva como
resultado cocientes y residuos.

b. Para ejecutar dicho programa necesitaremos los datos de entrada que son el
dividendo y el divisor de la división. Como datos de salida necesitamos como
resultado el cociente y el residuo de la división. Se necesita solamente la división
de números reales enteros positivos con dos cifras en el divisor y cinco y seis dígitos
en el dividendo.
c. Algoritmo: Resolver divisiones incluyendo residuo
Obtener el dato de dividendo
Obtener el dato de divisor
Realizar división
Imprimir cociente
Imprimir residuo

5. Desarrolla el algoritmo que podría resolverlo, desglosa los pasos


progresivos para obtener el resultado deseado. 6. Representa una solución en
pseudocódigo y otra en diagrama de flujo.

Algoritmo Pseudocódigo
1. Inicio 1. Inicio
2. Obtener el dato de dividendo 2. Declarar variable X
3. Obtener el dato de divisor 3. Declarar variable Y
4. Realizar división 4. Dar valor a dividendo
5. Imprimir cociente 5. Guardar dividendo en X
6. Imprimir residuo 6. Dar valor a divisor
7. Fin 7. Guardar divisor en Y
8. Realizar división (/)
9. Imprimir cociente
10. Realizar operación de
residuo(%)
11. Imprimir residuo
12. Fin
Diagrama de flujo
7. Realiza la validación del pseudocódigo y del diagrama de flujo mediante una
prueba de escritorio.

Datos de Entrada Operaciones Resultados


X 289087 289087/43 6722 (cociente)
Y 43 289087%43 41 (residuo)

8. Después de realizar la validación de tu algoritmo, identifica un área de


oportunidad de tu solución y descríbela.

Creo que una muy buena área de oportunidad podría ser el incluir en el
pseudocódigo y diagrama de flujo la especificación de introducir el tipo de datos con
los que vamos a trabajar, en este caso, números reales, enteros y positivos.
También sería ampliar el algoritmo para poder dar solución a todas las operaciones
aritméticas posibles o incluir números decimales, así como agregar comprobaciones
para poder ayudar rápidamente a los niños a revisar sus tareas.
9. Redacta tus conclusiones en relación con la importancia de la aplicación
de la metodología para la solución de un problema, la adecuada delimitación
del mismo y la validación de su funcionamiento, para ello, utiliza la prueba de
escritorio.

Me parece muy importante aplicar la metodología de la programación a la hora de


tratar de resolver algún problema debido a que de esa manera podemos llevar un
orden congruente y tratar de minimizar las faltas o fallos que pueda tener nuestra
posible solución, así como no perder de vista el tipo de problema y solución que
estamos buscando; también, el realizar el algoritmo, pseudocódigo y diagrama de
flujo, nos facilitará y agilizará trasladarlo al lenguaje al que se vaya escribir el
programa. Igualmente, al delimitar adecuadamente nuestro problema es vital para
no desperdiciar recursos, como tiempo y dinero y evitar al máximo pasos
innecesarios en nuestra solución. Finalmente con la prueba de escritorio nos
aseguramos de que vamos por buen camino y que estamos resolviendo
adecuadamente el problema en cuestión.

10. Menciona también las principales dificultades que encontraste al


implementar las primeras etapas de la metodología en tu caso de estudio.
Lo más difícil para mi fue encontrar algún problema de la vida cotidiana que fuera lo
suficientemente convincente, útil y realizable y que no fuera la clásica receta de
cocina. Después, el diferenciar entre la redacción del algoritmo con la del
pseudocódigo, ya que esta se acerca más a los lenguajes de programación, pero si
uno no conoce ningún lenguaje es ahí donde se dificulta y en vez de agilizar,
entorpece la resolución del problema, sin embargo, creo que con la práctica y el
conocimiento de la sintaxis de algún lenguaje esto se vuelve mucho más práctico,
rápido y ayuda a agilizar la solución y escribir el código.

BIBILIOGRAFIA

Deitel, P., Deitel, H. (2016). Cómo Programar en Java. México:


Pearson.
Vaca, C.. (2011). Paradigmas de Programación. julio 20, 2019,
de Universidad de Valladolid Sitio web:
https://www.infor.uva.es/~cvaca/asigs/docpar/intro.pdf