Este documento describe los conceptos básicos de la programación, incluyendo lenguajes de programación, características de los programas, diseño de programas, modelos de programación, tipos de datos, operadores y sentencias de control. Explica los tres tipos principales de lenguajes de programación, las fases del diseño de programas, y conceptos como variables, constantes y estructuras de control como la selección y la iteración.
Resolucion de Problemas en Educacion Inicial 5 años ED-2024 Ccesa007.pdf
UVM-Computación 1. Ingeniería industrial
1. U V M - C O M P U T A C I Ó N 1. In g e n i e r í a in d u s u s t r i a l . Ej e r c i c i o s Pr o p u e s t o s - Fa c i l it a d o r a : MS c . M a r í a S ofí a
M o l i n a
NOMBRE DE LA ASIGNATURA
COMPUTACIÓN 1
CARRERA
INGENIERÍA INDUSTRIAL
HORAS TEÓRICAS-HORAS PRÁCTICAS
2-4
PERIODO DE ELABORACIÓN
2013-B
TOMADO Y ADAPTADO CON FINES INSTRUCCIONALES PARA LA UNIDAD 3 DE
LA ASIGNATURA DE COMPUTACIÓN I 2DO SEMESTRE DE INGENIERÍA
INDUSTRIAL PARA LA UNIVERSIDAD VALLE DEL MOMBOY
Facilitadora:
MSc. Ing. María Sofía Molina Molina
1
2. U V M - C O M P U T A C I Ó N 1. In g e n i e r í a in d u s u s t r i a l . Ej e r c i c i o s Pr o p u e s t o s - Fa c i l it a d o r a : MS c . M a r í a S ofí a
M o l i n a
Lenguajes de programación
1. Características de los programas...................................................................................
2. Diseño del programa.....................................................................................................
- Fase de análisis
- Fase de programación
Edición
Compilación
Montaje
- Fase de explotación y mantenimiento
Instalación
Mantenimiento
3. Modelos de programación............................................................................................
- Secuencial
- Estructurada
- A objetos
4. Datos de la programación.............................................................................................
- Numéricos
- Lógicos
- Alfanuméricos
- Constantes y variables
5. Operadores....................................................................................................................
- Asignación
- Aritméticos
- Lógicos y relacionales
6. Sentencias de control....................................................................................................
- Selección
- Iteración
7. Anotaciones para diseño de algoritmos........................................................................
- Diagramas de flujo
- Pseudocódigo
1. LENGUAJES DE PROGRAMACIÓN
Los programas se escriben mediante lenguajes de proramación que conducen a
2
3. U V M - C O M P U T A C I Ó N 1. In g e n i e r í a in d u s u s t r i a l . Ej e r c i c i o s Pr o p u e s t o s - Fa c i l it a d o r a : MS c . M a r í a S ofí a
M o l i n a
expresar el algoritmo (problema a resolver) de una forma ordenada y programada. Existen 3
tipos de lenguajes:
Lenguaje Máquina: Inteligibles por la máquina directamente, es decir que las ordenes
escritas las procesa y realiza directamente la máquina. Estas instrucciones son
cadenas binarias (0 y 1) que especifican las instrucciones a realizar y la memoria
donde deben realizarse. Las instrucciones dependen directamente de la máquina
donde se programan.
Lenguaje Ensamblador: Sus instrucciones son NEMONICOS que indican la acción a
realizar y su dirección de memoria donde se ejecutan. La programación depende
también de la máquina donde se programe. Más sencillos que los lenguajes
máquina. La máquina no entiende directamente las ordenes y es necesario traducir
las ordenes a través de un programa ensamblador. La construcción de los
programas consta de 3 partes:
Lenguajes de Alto Nivel: Lenguajes creados a partir de ensamblador. Basan la
programación en sentencias y funciones que realizan una operación ya
implementada en la creación del lenguaje de programación. Este tipo de lenguajes
son los más sencillos de leer y comprender. Son independientes de la máquina
donde se programan. La máquina no puede entender directamente las sentencias y
se necesita de un programa traductor y linkador para que la máquina pueda ejecutar
las operaciones. Estos de lenguajes son Clipper, C, C++, Visual Basic, Pascal,
Modula2, etc...
2. CARACTERÍSTICAS GENERALES DE UN PROGRAMA
Con el fin de facilitar la explotación y el mantenimiento de un programa, es
fundamental reunir un conjunto de características generales para obtener su máximo
rendimiento en el menor plazo de tiempo y esfuerzo. Estas características son:
3
Programa
Fuente
Programa
Traductor
(ensamblador)
Programa
Objeto
4. U V M - C O M P U T A C I Ó N 1. In g e n i e r í a in d u s u s t r i a l . Ej e r c i c i o s Pr o p u e s t o s - Fa c i l it a d o r a : MS c . M a r í a S ofí a
M o l i n a
LEGIBILIDAD: Un programa debe ser claro y sencillo para facilitar su lectura y
comprensión a las personas ajenas al programador (autor) de la aplicación. De este
modo existe la posibilidad de repartir las tareas de mantenimiento y explotación.
FIABILIDAD: Nuestra aplicación debe ser un programa "robusto". Es decir, capaz de
recuperarse frente a errores o usos inadecuados por parte del usuario y controlar
todo posible error que pueda producirse en las distintas operaciones que realicen
los dispositivos que se utilizan en la aplicación.
PORTABILIDAD: El diseño de la aplicación debe permitir la codificación en
diferentes lenguajes utilizando para ello un diseño único y universal, sin entrar en
sentencias u operadores específicos de algún lenguaje en especial.
MODIFICABILIDAD: Debe ser fácil y posible su instalación en distintas máquinas.
Facilitar al máximo su mantenimiento, modificación y actualización para adaptarlo
o mejorarlo a nuevas situaciones. Por ejemplo efecto 2000. Este apartado se le
denomina por el termino coloquial "parcheado".
EFICIENCIA: Aprovechar y no derrochar los recursos de la máquina. Esto lo
conseguimos minimizando el uso de la memoria, el tiempo de proceso y el de
ejecución. No debemos dejarnos llevar por los últimos y potentes máquinas que
surgen día a día en el mercado. Siempre que podamos debemos pensar que
disponemos de una máquina con pocos recursos.
3. DISEÑO DE UN PROGRAMA
Proceso que se sigue desde el planteamiento del problema o tarea, hasta que se tiene
una solución instalada. Consta del estudio y diseño de cada una de las operaciones a realizar
por la aplicación. En este proceso no es necesaria la utilización del ordenador. Todo diseño
y análisis consta de diferentes fases, siendo 3 fundamentales en la realización de un buen
plan de trabajo.
FASE DE ANALISIS
Esta fase consiste en el examen y descripción detallada de cada uno de los aspectos y
dispositivos que intervienen en la creación y explotación del programa. Debemos tener muy
en cuenta los siguientes puntos:
• Equipos informáticos
• Personal informatico (en creación y utilización)
4
5. U V M - C O M P U T A C I Ó N 1. In g e n i e r í a in d u s u s t r i a l . Ej e r c i c i o s Pr o p u e s t o s - Fa c i l it a d o r a : MS c . M a r í a S ofí a
M o l i n a
• Estudio de datos de entrada
• Estudio de los resultados
• Relación entre salida / entrada
FASE DE PROGRAMACIÓN
Consiste en el diseño y desarrollo del algoritmo para la codificación de la aplicación.
Como resultado del desarrollo obtenemos un conjunto de acciones (funciones) que serán
traducidas por el compilador (proceso de compilación) y enlazas con las librerías (proceso
de linkado) para poder ser realizadas por la máquina. Las partes de este desarrollo son
entrada de datos, proceso de datos y salida. Por este orden sin posibilidad de modificación.
FASE DE EXPLOTACIÓN Y MANTENIMIENTO
Es el momento donde debemos ejecutar y probar la aplicación sucesivas veces con
diferentes datos para asegurar su correcto funcionamiento. También comprobaremos el
rendimiento optimo del programa. Esta fase comprende el mantenimiento de la aplicación a
lo largo de su vida útil para poder adaptarlo ante cualquier circunstancia. Es decir, mejorar
la aplicación añadiendo nuevas funciones o mejorando su rendimiento.
4. MODELOS DE PROGRAMACIÓN
Los modelos de programación es conocido también como metodología de la
programación y consiste en los métodos y técnicas disciplinadas para desarrollar algoritmos
cumpliendo con las características de los programas anteriormente expuestas. Existen 3
métodos:
SECUENCIAL: Modelo descendente, se base en una serie de descomposiciones
sucesivas del algoritmo inicial que describen el repertorio de instrucciones que constituyen el
programa. El programa quedara formado por una serie de módulos consecutivos que
realizaran una parte del algoritmo.
ESTRUCTURADA: Programación basada en la secuencial añadiendo subrutinas y
estructuras secuenciales, de iteración y selección consiguiendo un programa con módulos
independientes y reutilizables desde cualquier parte del programa. Los lenguajes tienden a
este tipo de programación.
A OBJETOS: Mismas características que los lenguajes estructurados, añadiendo
nuevas funciones y mecanismos de trabajo, como los objetos (conjunto de variables y
funciones), el encapsulamiento, el polimorfismo y la herencia. A través de estos lenguajes se
consigue un mejor rendimiento de los programas y una mayor seguridad en el tratamiento de
5
6. U V M - C O M P U T A C I Ó N 1. In g e n i e r í a in d u s u s t r i a l . Ej e r c i c i o s Pr o p u e s t o s - Fa c i l it a d o r a : MS c . M a r í a S ofí a
M o l i n a
los datos. Los lenguajes de última generación tienden a ser orientados a objetos.
5. TIPOS DE DATO, VARIABLES Y CONSTANTES
Los datos u objetos en un programa son aquellos que son modificados por las
instrucciones. Mediante ellos podremos realizar el almacenamiento y manipulación de la
información que intervienen en el programa. Todos los datos u objetos tiene un identificador
para referenciarlo, un tipo para indicar la información que puede tomar y valor que es la
información que guardan. Los tipos de datos básicos son:
VARIABLES
TIPO VARIANTE VALORES EJEMPLO
NUMEROS
Decimal. cualquiera numero=14
Hexadecimal. 0 al 9 y letras A-Z numero=0x9
Octal. 0 al 7 numero=06
BOOLEANOS --- true / false
CADENAS
Texto. cualquier texto cad=”hola”
Caracteres Especiales
Retroceso.
Retorno de carro.
Movimientos de línea.
Espacios
. . .
Los objetos que están destinados a guardar esta información son las variables y
constates. Las variables y constantes son posiciones de memoria destinadas a guardar
información que como hemos comentado tienen un identificador y un tipo. La diferencia
entre la variable y la constante, es que, la primera puede admitir y cambiar su valor a lo largo
de un mismo programa mientras que las constantes tendrán un valor fijo durante toda la
ejecución del programa y será imposible su modificación en tiempo de ejecución.
6. OPERADORES
ASIGNACIÓN
6
7. U V M - C O M P U T A C I Ó N 1. In g e n i e r í a in d u s u s t r i a l . Ej e r c i c i o s Pr o p u e s t o s - Fa c i l it a d o r a : MS c . M a r í a S ofí a
M o l i n a
Es el signo "=". Se puede utilizar en cualquier expresión valida. A su lado izquierdo
siempre tendrá una variable a la cual se le asigna el valor. A la derecha puede ser una
expresión valida como una constate, un valor, una variable, una función, o cualquier
expresión aritmética. Existe la posibilidad de realizar una asignación múltiple:
varible=valor;
variable1=variable2=variableN=valor;
ARITMÉTICOS
Utilizados para realizar cualquier operación matemática. Este tipo de operadores se
utilizan con variables numéricas o también para unir expresiones. En la siguiente tabla se
muestran este tipo de operadores.
OPERADOR DESCRIPCIÓN ORDEN
- Resta. 3
+ Suma 3
* Multiplica 2
/ Divide 2
LOGICOS Y RELACIONALES
Ambos operadores se utilizan en las sentencias de control, fuera de este tipo de
sentencias no tienen ninguna utilidad. Los Lógicos se utilizan para unir varias condiciones
dando como resultado una única expresión. Los relacionales son utilizados para realizar
comparaciones entre los objetos (variables, constantes, valores y funciones) de un programa.
OPERADORES RELACIONALES OPERADORES LÓGICOS
OPERADOR DESCRIPCIÓN
ORDE
N
DESCRIPCIÓN ORDEN
< Menor que. 5 Y (AND) 10
> Mayor que. 5 O (OR) 11
<= Menor o igual. 5 NO (NOT) 1
7
8. U V M - C O M P U T A C I Ó N 1. In g e n i e r í a in d u s u s t r i a l . Ej e r c i c i o s Pr o p u e s t o s - Fa c i l it a d o r a : MS c . M a r í a S ofí a
M o l i n a
>= Mayor o igual 5
= = Igual 6
--- Distinto 6
7. SENTENCIAS DE CONTROL
Mecanismo por el cual, los lenguajes de programación provocan que el flujo, avance y
se ramifique en funcion de los datos que contienen sus objetos. Existen las sentencias de
selección que ramifican el programa y las sentencias de iteración de realizan una repetición
de un bloque de código mientras que una condición sea verdadera.
SELECCIÓN
Las sentencias de selección pueden ser simples o multiselección. En ambos casos la
ejecución atraviesa un conjunto de estados bolean de determinan las acciones a realizar. El
modo de ejecución de estas sentencias es comparar objetos para ver si la condición o
condiciones se cumplen. La sentencia de multiselección suelen usarse cuando el rango de
valores es conocido y no muy amplio. Las simples para cualquier caso de comparación.
SIMPLE
si condicion(es)=verdadero entonces
ACCION
ACCION
...
sino
ACCION
ACCION
...
fin si
MULTISELECCION
8
9. U V M - C O M P U T A C I Ó N 1. In g e n i e r í a in d u s u s t r i a l . Ej e r c i c i o s Pr o p u e s t o s - Fa c i l it a d o r a : MS c . M a r í a S ofí a
M o l i n a
si valor=const1 entonces
ACCION
ACCION
fin si
si valor=const2 entonces
ACCION
ACCION
fin si
si valor=const2 entonces
ACCION
ACCION
si no
ACCION
ACCION
fin si
DE ITERACIÓN
Las sentencias de iteración repiten el bloque de código que tienen en su interior
mientras la condición o condiciones de salida sean verdad. Existen dos tipos de iteración
HASTA y MIENTRAS. Ambas pueden realizar las mismas operaciones. La utilización del
primero suele coincidir que la condición de salida sea un valor límite y el segundo que su
condición sea un valor determinado.
HASTA
repetir hasta valor
ACCION
ACCION
fin repetir
MIENTRAS
repetir mientras condicion(es) = verdadero
ACCION
ACCION
fin repetir
9
10. U V M - C O M P U T A C I Ó N 1. In g e n i e r í a in d u s u s t r i a l . Ej e r c i c i o s Pr o p u e s t o s - Fa c i l it a d o r a : MS c . M a r í a S ofí a
M o l i n a
8. AÑOTACIONES PARA EL DISEÑO DE ALGORITMOS
Es la representación gráfica del desarrollo del algoritmo. Esta representación nos
ayudara a conocer la información que tenemos, donde la tenemos, que debemos hacer con
ella y como presentarla. Esta representación debe tener las cualidades de sencillez, claridad y
normalización en su diseño. Las normas para presentar los organigramas son:
• El inicio y final del programa solo aparecen una vez.
• El camino se tomara de principio a fin de izquierda a derecha (en mismo nivel).
• No realizar cruces entre los distintos caminos. Para evitarlo usar los conectores.
• En la parte superior se encuentran los soportes de entrada.
• En la parte central estarán los procesos y operaciones a realizar.
• En la parte final se encontrara la salida de datos.
SIMBOLOGIA
DIAGRAMA DESCRIPCIÓN
Establece el INICIO y el FIN.
Indica un PROCESO interno.
Introducción de datos por parte del usuario.
SALIDA de información POR PANTALLA.
Indica la continuidad de un diagrama. CONECTOR.
10
11. U V M - C O M P U T A C I Ó N 1. In g e n i e r í a in d u s u s t r i a l . Ej e r c i c i o s Pr o p u e s t o s - Fa c i l it a d o r a : MS c . M a r í a S ofí a
M o l i n a
Volumen de DATOS.
Indica el SENTIDO del flujo
Especifica una bifurcación del flujo del programa. DECISIÓN.
SALIDA de información POR IMPRESORA.
Indica un proceso externo. SUBRUTINA.
SENTECIAS DE CONTROL
DIAGRAMA DESCRIPCIÓN
Sentencia de ITERACIÓN.
11
12. U V M - C O M P U T A C I Ó N 1. In g e n i e r í a in d u s u s t r i a l . Ej e r c i c i o s Pr o p u e s t o s - Fa c i l it a d o r a : MS c . M a r í a S ofí a
M o l i n a
Sentencia de SELECCIÓN simple. Con cláusula sino
Sentencia de SELECCIÓN múltiple. Con cláusula sino.
EJEMPLO 1: Realizar un programa para calcular el área de un rectángulo cuyos datos base
y altura se leen del teclado y el resultado se visualizara en la pantalla. Se deberá
realizar mediante diagramas y pseudocódigo.
12
INICIO
INICIALIZAR VARIABLES
BASE<-0
ALTURA<-0
AREA<-0
INTRODUCIR
BASE
ALTURA
PROCESO: AREA<-BASE*ALTURA
VISUALIZAR AREA
FIN
13. U V M - C O M P U T A C I Ó N 1. In g e n i e r í a in d u s u s t r i a l . Ej e r c i c i o s Pr o p u e s t o s - Fa c i l it a d o r a : MS c . M a r í a S ofí a
M o l i n a
EJEMPLO 2: Realizar un programa que obtenga el sueldo neto de un trabajador cuyo
sueldo base se obtiene por teclado y teniendo en cuenta que si ese sueldo es mayor a
150.000pts tiene una retención del 10%.
EJEMPLO 3: Realizar un programa que calcule la cuota de kilómetros de un visitador
médico pidiendo los kilómetros por teclado. Sabiendo que se paga a 100pts si
los kilómetros recorridos son menores o iguales a 200 y 150pts si el
kilometraje es menor a 200.
13
INICIO
INICIALIZAR VARIABLES
BASE<-0
NETO<-0
RETEN<-0
INTRODUCIR
BASE
SI BASE > 150000
RETEN<-SUELDO_BASE*10/100
FIN SI
NETO<- BASE-RETEN
VISUALIZAR NETO
FIN
INICIO
INICIALIZAR VARIABLES
KM<-0
TOTAL<-0
MAS200<-100
MENOS 200<-150
INTRODUCIR
KM
SI KM<=200
TOTAL<-KM*150
SINO
TOTAL<-KM*100
FIN SI
VISUALIZAR TOTAL
FIN
14. U V M - C O M P U T A C I Ó N 1. In g e n i e r í a in d u s u s t r i a l . Ej e r c i c i o s Pr o p u e s t o s - Fa c i l it a d o r a : MS c . M a r í a S ofí a
M o l i n a
14
15. U V M - C O M P U T A C I Ó N 1. In g e n i e r í a in d u s u s t r i a l . Ej e r c i c i o s Pr o p u e s t o s - Fa c i l it a d o r a : MS c . M a r í a S ofí a
M o l i n a
EJEMPLO 4: Realizar un programa donde nos calcule el dinero total a devolver cuando se
pide un crédito bancario. Teniendo en cuenta el estado civil del usuario a la
hora de pedir el crédito.
15
INICIO
INICIALIZAR VARIABLES
PRESTADO<-0
CIVIL<-0
CASADO<-1
SOLTERO<-2
VIUDO<-3
DIVORCIADO<-4
SEPARADO<-5
TOTAL<-0
INTRODUCIR
PRESTADO,CIVIL
SI CIVIL=CASADO ENTONCES
TOTAL=PRESTADO*CASADO
FIN SI
SI CIVIL=SOLTERO ENTONCES
TOTAL=PRESTADO*SOLTERO
FIN SI
SI CIVIL=VIUDO ENTONCES
TOTAL=PRESTADO*VIUDO
FIN SI
SI CIVIL=SEPARADO ENTONCES
TOTAL=PRESTADO*SEPARADO
FIN SI
SI CIVIL=DIVORCIADOENTONCES
TOTAL=PRESTADO*DIVORCIADO
SI NO
TOTAL=0
FIN SI
VISUALIZAR TOTAL
FIN
16. U V M - C O M P U T A C I Ó N 1. In g e n i e r í a in d u s u s t r i a l . Ej e r c i c i o s Pr o p u e s t o s - Fa c i l it a d o r a : MS c . M a r í a S ofí a
M o l i n a
EJEMPLO 5: Realizar un programa que sume los valores que se van introduciendo por
teclado mientras que el usuario no introduzca cero. Debemos ir mostrando el
subtotal cada valor introducido.
16
INICIO
INICIALIZAR VARIABLES
TOTAL<-0
VALOR<-0
REPETIR HASTA VALOR=0
INTRODUCIR VALOR
TOTAL=TOTAL+VALOR
VISUALIZAR TOTAL
FIN REPETIR
VISUALIZAR TOTAL
FIN