Documentos de Académico
Documentos de Profesional
Documentos de Cultura
PROGRAMACIÓN
Introducción y Lógica de
UNIDAD 3
Programación
Tema Fases para la resolución de
problemas
OBJETIVO
PROGRAMA
Un programa es un conjunto de instrucciones que le indican al hardware que tipo de acciones
debe efectuar con los datos. La programación es la acción de codificar o escribir instrucciones
sobre un entorno llamado lenguaje de programación, para generar aplicaciones software o
simplemente programas (Zapata, 2017).
DESARROLLO
Introducción y Lógica de Programación
Para que un procesador realice un proceso se le debe suministrar en primer lugar un algoritmo
adecuado. El procesador debe ser capaz de interpretar el algoritmo, lo que significa:
• Diseño. Una vez analizado el problema, se diseña una solución que conducirá a un
algoritmo que resuelva el problema.
• Documentación. Escritura de las diferentes fases del ciclo de vida del software,
esencialmente el análisis, diseño y codificación, unidos a manuales de usuario y de
referencia, así como normas para el mantenimiento.
Introducción y Lógica de Programación
1. Análisis del Problema
“El análisis es una etapa que define el éxito o el fracaso del producto final”
La primera fase de la resolución de un problema con computadora es el análisis del
problema. Esta fase requiere una clara definición, donde se contemple exactamente
lo que debe hacer el programa y el resultado o solución deseada.
Dado que se busca una solución por computadora, se precisan especificaciones
detalladas de entrada y salida. La Figura 2.1 muestra los requisitos que se deben
definir en el análisis.
Introducción y Lógica de Programación
• ¿Qué entradas se requieren? (tipo de datos con los cuales se trabaja y cantidad).
• ¿Cuál es la salida deseada? (tipo de datos de los resultados y cantidad).
• ¿Qué método produce la salida deseada?
• Requisitos o requerimientos adicionales y restricciones a la solución.
Introducción y Lógica de Programación
Fases para la resolución de un Problema
1. Análisis del Problema
EA
ná
PA
ná SA
ná
ns
lisi ris
lis
ais
lis
Diseñar una solución equivale a generar, organizar y representar las ideas sobre la
solución del problema. Para ello se cuenta con técnicas y herramientas de diseño
propias de cada modelo de programación, que permiten registrar y comunicar las
operaciones y procesos a desarrollar.
1. Programar un módulo.
2. Comprobar el módulo.
3. Si es necesario, depurar el módulo.
4. Combinar el módulo con los módulos anteriores.
Introducción y Lógica de Programación
3. Codificación
La codificación es la escritura en un lenguaje de programación de la representación
del algoritmo desarrollada en las etapas precedentes. Dado que el diseño de un
algoritmo es independiente del lenguaje de programación utilizado para su
implementación, el código puede ser escrito con igual facilidad en un lenguaje o en
otro.
Para realizar la conversión del algoritmo en programa se deben sustituir las palabras
reservadas en español por sus homónimos en inglés, y las operaciones/instrucciones
indicadas en lenguaje natural por el lenguaje de programación correspondiente.
4. Compilación y ejecución
Una vez que el algoritmo se ha convertido en un programa fuente, es preciso introducirlo en memoria
mediante el teclado y almacenarlo posteriormente en un disco. Esta operación se realiza con un
programa editor. Posteriormente el programa fuente se convierte en un archivo de programa que se
guarda (graba) en disco.
El programa fuente debe ser traducido a lenguaje máquina, este proceso se realiza con el compilador
y el sistema operativo que se encarga prácticamente de la compilación.
Si tras la compilación se presentan errores (errores de compilación) en el programa fuente, es preciso
volver a editar el programa, corregir los errores y compilar de nuevo. Este proceso se repite hasta que
no se producen errores, obteniéndose el programa objeto que todavía no es ejecutable
directamente. Suponiendo que no existen errores en el programa fuente, se debe instruir al sistema
operativo para que realice la fase de montaje o enlace (link), carga, del programa objeto con las
bibliotecas del programa del compilador. El proceso de montaje produce un programa ejecutable.
.Exe
Introducción y Lógica de Programación
4. Verificación
La verificación o compilación de un programa es el proceso de ejecución del programa con una
amplia variedad de datos de entrada, llamados datos de test o prueba, que determinarán si el
programa tiene o no errores (“bugs”). Para realizar la verificación se debe desarrollar una amplia
gama de datos de test: valores normales de entrada, valores extremos de entrada que comprueben
los límites del programa y valores de entrada que comprueben aspectos especiales del programa.
5. Depuración
La depuración es el proceso de encontrar los errores del programa y corregir o eliminar dichos
errores.
Cuando se ejecuta un programa, se pueden producir tres tipos de errores:
1. Errores de compilación. Se producen normalmente por un uso incorrecto de las reglas del
lenguaje de programación y suelen ser errores de sintaxis. Si existe un error de sintaxis, la
computadora no puede comprender la instrucción, no se obtendrá el programa objeto y el
compilador imprimirá una lista de todos los errores encontrados durante la compilación.
Input(edad)
Introducción y Lógica de Programación
5. Depuración
2. Errores de ejecución. Estos errores se producen por instrucciones que la computadora puede
comprender pero no ejecutar. Ejemplos típicos son: división por cero y raíces cuadradas de números
negativos. En estos casos se detiene la ejecución del programa y se imprime un mensaje de error.
3. Errores lógicos. Se producen en la lógica del programa y la fuente del error suele ser el diseño del
algoritmo.
Estos errores son los más difíciles de detectar, ya que el programa puede funcionar y no producir
errores de compilación ni de ejecución, y sólo puede advertirse el error por la obtención de resultados
incorrectos. En este caso se debe volver a la fase de diseño del algoritmo, modificar el algoritmo,
cambiar el programa fuente y compilar y ejecutar una vez más.
//Aquí se realiza el cálculo del IVA
venta = cantidad * precio
iva = venta * 0.12
Valor = 5 / 0
Introducción y Lógica de Programación
Los tipos de datos más comunes y que se trabajarán en este curso son: alfanuméricos,
numéricos y lógicos.
Los tipos de datos son clasificaciones para organizar la información que se almacena
en la memoria del computador (Anívar Chavez, 2017. El tipo de dato le indica al
dispositivo de procesamiento cuanto espacio de memoria debe reservar para
almacenar el dato, es decir, para determinar el tamaño del espacio de memoria.
Los tipos de datos más comunes dentro del entorno del proceso de desarrollo
algorítmico (no desde el enfoque de un lenguaje de programación) son: alfanuméricos,
numéricos y lógicos.
Introducción y Lógica de Programación
LOS TIPOS DE DATOS
DATOS ALFANUMÉRICOS
Caracter (sin tilde): se refiere a los datos que solo tienen un caracter, que puede ser
una letra del alfabeto, un digito del 0 al 9 o un carácter especial. Los valores de tipo
carácter deben encerrarse entre comillas simples. Por ejemplo: ’a’, ’R’, ’2’, ’#’, ’@’, ‘ ’
Los dígitos que son tratados como caracteres son diferentes a los valores numéricos,
por lo tanto, no se deben realizar operaciones aritméticas con ellos.
venta= ‘4’ + ‘5’ error
‘6’ + ‘8’ resultado ’68’
Introducción y Lógica de Programación
LOS TIPOS DE DATOS
DATOS ALFANUMÉRICOS
Cadena: son los datos que están compuestos por un conjunto de letras del alfabeto,
dígitos y caracteres especiales, incluyendo el espacio en blanco. Los datos de tipo
cadena deben encerrarse entre comillas dobles.
Al igual que en el caso de los tipos caracter, los datos de cadena expresados dígitos
numéricos no pueden ser utilizados para hacer cálculos numéricos.
Introducción y Lógica de Programación
LOS TIPOS DE DATOS
DATOS NUMÉRICOS
Corresponden a los datos que están compuestos por solo números y signos (positivo y
negativo), es decir, dígitos del 0 al 9, con los cuales se pueden realizar operaciones aritméticas.
Estos tipos de datos se subdividen en: Enteros y Reales.
-98
Entero: son aquellos datos compuestos por números que no tienen punto decimal. Pueden ser
números positivos, negativos o el cero. Ejemplos de este tipo de datos pueden ser: 20, -5, 200,
1500000.
Real: son datos con componente decimal, pueden ser positivos, negativos o cero. Ejemplos:
1.75, 4.5, 1800000.00, -234.00.
Hay que tener presente que las unidades de mil no se deben separar con puntos o comas.
Solamente se usa el punto para indicar la partedecimal.
Introducción y Lógica de Programación
LOS TIPOS DE DATOS
Son aquellos datos que toman solo uno de los dos posibles valores booleanos: Verdadero o
Falso. Estos valores son equivalentes a los dígitos del sistema binario: 1 corresponde a
Verdadero y 0 a Falso.
Por ejemplo, supóngase que se necesita almacenar la respuesta suministrada por un paciente
en una clínica sobre si fuma o no, o sobre si es alérgico o no a un tipo de medicamento. En
ambos casos, se debería utilizar este tipo de datos para clasificar el dato suministrado por el
paciente.
Introducción y Lógica de Programación
LOS TIPOS DE DATOS
Introducción y Lógica de Programación
VARIABLES
LOS IDENTIFICADORES
Para asignar nombres validos a un identificador existen una serie de reglas que facilitan su
escritura. Es importante mencionar también que, existen reglas y recomendaciones propias,
dependiendo del lenguaje de programación en el que se vaya a codificar.
Introducción y Lógica de Programación
VARIABLES
LOS IDENTIFICADORES REGLAS PARA DEFINIRLOS
entero edad
Introducción y Lógica de Programación
VARIABLE
Declaración de variables
Cuando en un algoritmo se requiera utilizar una variable, esta debe ser declarada. Declarar una
variable quiere decir que se va a reservar un espacio de memoria, el cual tendrá un nombre y
un tipo de dato.
definir Dim edad as integer (Lenguaje Visual Basic net)
Asignación de datos a una variable
Existen dos formas de darle valor a una variable: a través de la asignación o a través de la
lectura de un valor. Readln(edad) en Pascal lectura de datos
La forma general para declarar variables es la siguiente:
Ejemplos: Atención: No puede existir mas de
Declaración Asignación una variable con el mismo nombre
(identificación) en un mismo
Cadena apellido apellido= “Mrquez davila” algoritmo y con distinta finalidad.
Real salario salario = 1412.25
Entero edad edad = 36
Caracter estacivil estadocivil = ‘S’
Logico discapacidad discapacidad = False
Introducción y Lógica de Programación
CONSTANTES
Una constante es un espacio en la memoria donde se almacena un dato que, a diferencia de
los datos que se almacenan en las variables, permanece constante durante la ejecución de
todo el algoritmo. Al igual que las variables, las constantes también se deben declarar. Para
declarar una constante se utiliza la siguiente forma general o sintaxis:
Operadores aritméticos
Se utilizan para realizar operaciones aritméticas entre datos de tipo entero o real, su resultado
es de tipo numérico. Los operadores aritméticos son los siguientes:
- Resta
+ Suma
/ División real o entera
* Multiplicación o producto
% Modulo o Resto de la división entera (Mod)
ˆ Potenciación, este símbolo tiene el nombre de circunflejo.
Introducción y Lógica de Programación
OPERADORES
Operadores aritméticos
El operador % (Modulo o Resto de la división) solo se puede emplear con datos de tipo
Entero.
El operador / puede usarse con datos enteros o reales. Si los datos son enteros, el
resultado es entero, si alguno de los datos es real, el resultado será del mismo tipo
(real).
Introducción y Lógica de Programación
OPERADORES
Operadores Relacionales
Estos operadores se utilizan para escribir expresiones relacionales o de comparación, las cuales
producen un resultado lógico o booleano: Verdadero o Falso.
Operadores Lógicos
Y Conjunción.
O Disyunción.
NO Negación.
Estos operadores funcionan con datos de tipo lógico; para obtener el resultado de la aplicación
de estos operadores, es indispensable conocer cómo funcionan las tablas de verdad de cada
uno de ellos.
DESARROLLO
Introducción y Lógica de Programación
PSEUDOCODIGO
El pseudocódigo es un lenguaje de especificación (descripción) de algoritmos. El uso de tal
lenguaje hace el paso de codificación final (esto es, la traducción a un lenguaje de
programación) relativamente fácil.
El pseudocódigo nació como un lenguaje similar al inglés y era un medio de representar
básicamente las estructuras de control de programación estructurada
El pseudocódigo original utiliza para representar las acciones sucesivas palabras reservadas en
inglés —similares a sus homónimas en los lenguajes de programación—, tales como start, end,
stop, if-then-else, while-end, repeat-until, etc. La escritura de pseudocódigo exige
normalmente la indentación (sangría en el margen izquierdo) de diferentes líneas.
DESARROLLO
Introducción y Lógica de Programación
BIBLIOGRAFÍA
• Chaves, A. (2017). Aprenda a Diseñar Algoritmos. Bogotá - Colombia: Editorial Sello Editorial
UNAD.
• Herrera, J., Gutiérres, J., & Pulgarín, R. (2017). Introducción a la Lógica de Programación
(Primera ed.). Bogotá - Colombia: Editorial: ElIZCOM S.A.S.
• Lovos, E., & Goin, M. (2018). Problemas y Algoritmos - Un Enfoque Práctico. Editorial UNRN.
• Zapata, C. (2006). Fundamentos de programación, Guía de autoenseñanza (Primera ed.).
Colombia: Editorial Alfaomega Ra-Ma.