Documentos de Académico
Documentos de Profesional
Documentos de Cultura
MODULO 1
UNIDAD 1: SISTEMAS DE PROCESAMIENTO DE INFORMACIÓN Y ALGORITMOS
1
d. Lenguaje Orientado a Objetos: Organiza los datos en objetos que pueden almacenar y
manipular información, en forma similar a como el ser humano percibe la realidad que lo rodea.
Trabaja con unidades lógicas, denominadas Objetos, que contienen información, se
interrelacionan, y ejecutan las funciones necesarias para resolver un problema.
2. SISTEMAS DE INFORMACIÓN
Sistema: Conjunto de elementos que interactúan entre sí para lograr un objetivo.
Sistema de Información: Tratamiento de la información de una unidad de negocio para su uso
posterior, con el objetivo de cubrir una necesidad. Usado para dar apoyo a las actividades del negocio.
Actividades de un Sistema de Información:
1. Entrada de Datos: Se capturan los datos que servirán para el posterior procesamiento, sean
externos a la organización, o internos.
2. Almacenamiento: Se guardan los datos recopilados y la información generada.
3. Procesamiento de Información: Se toman los datos capturados y se los procesa, para generar
información que tenga mayor significado.
4. Salida de Información: Se transfiere la información generada a las personas interesadas en ella.
2
3. ELEMENTOS DEL LENGUAJE
Entidad: Son los elementos sobre los cuales trabaja un programa. Ejemplos: subprogramas, variables,
sentencias, etc.
Atributos: Son características de las entidades, que las diferencian entre sí. Por ejemplo: nombre,
valor, tipo, ubicación en memoria, tiempo de vida, etc.
Los atributos son asociados a una entidad por medio de un Mecanismo de Ligadura. La ligadura se
crea o implementa en distintos momentos, esto se llama Tiempo de Ligadura; y según en qué
momento se dé, se las puede clasificar en:
→ Ligadura Estática: Se produce antes de la ejecución del programa, en tiempo de
compilación o de diseño. Tiene las siguientes características:
1. Menor flexibilidad.
2. Mayor seguridad (detección temprana de errores).
3. Mayor eficiencia.
4. Aplicable a lenguajes compilados.
→ Ligadura Dinámica: La asociación se da durante la ejecución del programa. Características:
1. Mayor flexibilidad.
2. Menor seguridad.
3. Mayor costo de ejecución.
SINTAXIS Y SEMÁNTICA
Sintaxis del Lenguaje
Los lenguajes de programación deben seguir ciertas reglas que determinan la validez de las sentencias
empleadas. Este conjunto de reglas define la Sintaxis del lenguaje, que está determinada por:
→ Reglas Léxicas: Conjunto de caracteres del lenguaje y la forma en que se combinan para formar
sentencias válidas.
→ Reglas Sintácticas: Definen reglas para construcciones más complejas, que se dan mediante la
combinación de elementos léxicos.
Elementos de la Sintaxis de un lenguaje: Alfabeto, identificadores, palabras reservadas, espacios en blanco,
símbolos de operadores, expresiones, delimitadores de código, comentarios.
4. ALGORITMOS
Un Algoritmo es un conjunto de pasos para resolver un problema. Se parte desde un estado inicial y una
entrada para llegar a un estado final o solución. En computación, los problemas son resueltos utilizando
algoritmos que son representados mediante programas o software.
3
2. Definido: Se debe obtener el mismo resultado en cada ejecución.
3. Finito: Debe tener un número finito de pasos que permitan resolver el problema.
Diseño de Algoritmos
Para resolver un problema mediante un algoritmo, se puede recurrir a distintas técnicas. Una de las más
conocidas se denomina Divide y Vencerás, y consiste en dividir el problema en partes más pequeñas, ya
que cada una de estas es más fácil de resolver. Esta subdivisión se puede realizar tantas veces como sea
necesario. Una vez que se obtienen las soluciones a cada subproblema, se combinan para dar una solución
al problema original de mayor complejidad. Se denomina también Diseño Descendente, y consiste en
refinar el algoritmo por cada división de las partes, para agregar mayores detalles en los distintos pasos. Las
principales ventajas de la aplicación de esta técnica son:
1. Comprensión más fácil del problema.
2. Mayor facilidad para resolver problemas complejos.
3. Mayor facilidad para analizar y mejorar la eficiencia del algoritmo.
4. Realizar modificaciones es más fácil.
5. Mayor facilidad para verificar problemas.
Representación de Algoritmos
La descripción de un algoritmo puede tener distintos niveles de detalle. Se puede comenzar utilizando
lenguaje natural, pero esta puede tener ambigüedades o ser extensa. Para ello se emplean técnicas
formales de descripción de algoritmos, que son más estructuradas. Por último, se debe traducir la
representación formal del algoritmo a una implementación en algún lenguaje de programación. Entre estas
técnicas formales de representación de algoritmos encontramos las siguientes:
1. Diagrama de Flujo: Es una forma gráfica que utiliza una serie de símbolos con significados
especiales, y son la representación gráfica de los pasos de un proceso. Están unidos mediante
flechas que indican la secuencia de los pasos del algoritmo.
4
2. Pseudocódigo: Define una estructura intermedia entre la descripción de algoritmos en lenguaje
natural y la descripción en lenguajes de programación. Utiliza palabras que facilitan la lectura
humana, y aplica un orden y reglas parecidas a las de un lenguaje de programación.
Existen muchas formas y reglas distintas para representar un algoritmo en pseudocódigo. En nuestros
ejemplos, constara de las siguientes secciones:
Cabecera del Algoritmo: Sentencia simple que comienza con la palabra reservada “Algoritmo”,
y a continuación se indica el nombre asignado al mismo.
Declaración de Estructuras de Datos (Arreglos y Registros): En el caso de utilizarse estas,
deben declararse en un bloque de código con la palabra reservada “Tipo”.
Declaración de Variables y Constantes: Se enumeran utilizando las palabras reservadas “Var” y
“Const” respectivamente.
Sentencias Ejecutables: Son las instrucciones que constituyen los pasos del algoritmo. Para
delimitarlas, se utilizan las palabras reservadas “Inicio” y “Fin”.
a. Iniciar con el nombre del algoritmo o programa: algoritmo Numeros_Pares
b. Declarar las variables: var
entero: cantidad, num
c. Iniciar la secuencia de instrucciones: inicio
d. Detallar las instrucciones: cantidad 1
Usando la flecha se asigna valor a variables. repetir
“Leer” lee valores ingresados por teclado. leer (num)
si num > 0 entonces
“Escribir” muestra valores por pantalla. escribir (num)
fin-si
hasta-que cantidad > 10
e. Termina la secuencia de instrucciones. fin
5
UNIDAD 2: TIPOS DE DATOS
Un Tipo de Dato define el conjunto de valores que una variable puede tener. También especifica las
operaciones que se pueden realizar con dicha variable, y define el espacio que se utiliza en memoria para
almacenar los valores (variables y constantes). Se pueden clasificar en:
Básicos o Integrados: Definidos por los lenguajes de programación.
Definidos por el Programador: Definidos a partir de tipos de datos básicos.
1. Datos Numéricos
Representan el conjunto de los valores numéricos. Pueden ser:
a. Tipo Numérico Entero: Números enteros sin parte fraccionaria, pueden ser positivos o negativos.
b. Tipo Numérico Real: Comprende los enteros positivos, negativos, el cero y los números decimales.
Ocupan mayor espacio en memoria que los enteros.
2. Datos Lógicos
Los tipos de datos lógicos o booleanos representan los valores lógicos Verdadero (True) o Falso (False).
Comúnmente se usan para dirigir las secuencias de código por ejecutar, ya que mediante el uso de este tipo
de dato, pueden evaluarse condiciones que permiten tomar una decisión.
VARIABLES Y CONSTANTES
Variable: Es un espacio reservado en memoria, cuyo contenido (valor) puede cambiar durante la
ejecución del programa. Tiene asociado un Identificador o Nombre, un Tipo de Dato y un Valor, y
solo puede tomar valores permitidos según su tipo de dato. El Identificador o Nombre es un
conjunto de caracteres con el que se puede referenciar a la variable.
Constante: Representa objetos cutos valores no pueden cambiar durante la ejecución del
programa. Si se intenta esto, se producirá un error. También tienen Identificador, Tipo de Dato y
Valor, pero este último no puede modificarse.
Palabras Reservadas
Son palabras que poseen un significado especial para el lenguaje, y por tanto, no pueden ser utilizadas
como identificadores de variables o constantes. Algunas de ellas son: inicio, fin, entero, para, según, repetir,
función, si, sino, mientras, entonces, cadena, etc…
UNIDAD 3: EXPRESIONES
Una Expresión es la combinación de variables, constantes, operadores, funciones y reglas. Dependiendo de
cómo se combinen estos elementos, se obtendrán distintos resultados. Se clasifican en:
a. Aritméticas: Devuelven resultados de tipo numérico.
b. Lógicas: Devuelven resultados de tipo lógico.
c. Relacionales: Devuelven resultados de tipo lógico.
6
d. De Carácter: Devuelven resultados de tipo carácter.
1. Expresiones Aritméticas
Son análogas a las que se utilizan en álgebra, a saber: Suma (+), Resta (-), Multiplicación (*), División Real
(/), Potencia (^ o **), División Entera (div) y Módulo o Resto de División Entera (mod). Son expresiones
binarias, ya que requieren de dos operandos (números) y un operador.
Reglas de Prioridad
Cuando en una expresión figuran varios operadores, se aplican reglas de precedencia o prioridad, que
indican al programa el orden en el que se efectuarán las operaciones. Estas son las siguientes:
a. Primero se evalúan las expresiones encerradas entre paréntesis.
b. De no haber paréntesis, las operaciones aritméticas se resuelven en el siguiente orden:
1. Potencia o Exponenciación.
2. Producto y División.
3. División Entera y Módulo.
4. Suma y Resta.
c. Si coinciden los operadores en su orden de prioridad, se ejecutan de izquierda a derecha.
2. Expresiones Lógicas
Son aquellas cuyo resultado es de tipo lógico, es decir, verdadero o falso. Son utilizados generalmente
cuando es necesario evaluar una expresión para tomar una decisión. Los Operadores Lógicos son:
a. Conjunción: And - Y - &
b. Disyunción: Or - O - |
c. Negación: Not - No - !
Los operadores Conjunción y Disyunción son binarios, ya que necesitan dos operandos para cumplir su
función; mientras que el operador Negación es unario, se aplica a un solo objeto.
3. Expresiones Relacionales
Comparan dos datos, devolviendo si la condiciones verdadera o falsa. Utilizan operadores Relacionales o de
Comparación, que son los siguientes:
Igual que (=)
Menor que (<)
Mayor que (>)
Menor o igual que (<=)
Mayor o igual que (>=)
Distinto de (<>)
Por ser operadores de comparación, en todos los casos son binarios (necesitan dos operandos).
OPERACIONES
1. Operación de Asignación
Es utilizada para almacenar / asignar un valor a una variable. Se representa con los símbolos = o .
Variable Expresión.
Los operadores de asignación pueden ser:
a. Asignación Aritmética: A 6 + 7
b. Asignación Lógica: A 5 < 7
7
c. Asignación de Caracteres / Cadenas: A “hola”.
8
MODULO 2
ESTRUCTURAS ALGORITMICAS
La Programación Estructurada es un paradigma que tiene por propósito escribir programas en forma clara y
precisa, utilizando únicamente tres estructuras de programación: Secuenciales, Condicionales y
Repetitivas. El Teorema del Programa Estructurado indica que todo diseño de algoritmo puede ser
implementado utilizando estas estructuras de programación.
9
2. Condicional Doble (if – else)
Evalúa una expresión lógica (condición). Si esta es verdadera, ejecuta las sentencias que se encuentran a
continuación de la palabra reservada entonces (rama verdadera); pero si la condición resulta ser falsa,
entonces se ejecutan las sentencias especificadas a continuación de la palabra reservada si-no (rama falsa).
La condición debe devolver un resultado de tipo lógico (verdadero o falso).
Pseudocódigo Diagrama
si <condición> entonces
sentencia 1
sentencia 2
.
sentencia n
si-no
sentencia 1
sentencia 2
.
sentencia n
fin-si
Pseudocódigo Diagrama
segun-sea <expresión> hacer
caso A: sentencia A1
sentencia A2
…..
caso B: sentencia B1
sentencia B2
…..
caso C: sentencia C1
sentencia C2
…..
si-no
Sentencia X1
fin-según
10
UNIDAD 3: ESTRUCTURAS REPETITIVAS
Las Estructuras Iterativas o de Repetición permiten ejecutar una sentencia de instrucciones más de una
vez. Un Bucle es una sección de código que se repite: cuando se termina de ejecutar la última instrucción
del conjunto, el flujo de control retorna a la primera sentencia y comienza una nueva repetición.
1. Mientras (while)
Se ejecuta un conjunto de sentencias, mientras el resultado de una condición sea verdadero. Primero se
evalúa la condición y, si es verdadera, se ejecutan luego las sentencias definidas en el bucle; y se sigue
repitiendo hasta que la condición de como resultado falso. El número mínimo de veces que se repite es 0: si
la primera vez, la condición resulta ser falsa, el bucle no se ejecutará jamás.
Pseudocódigo Diagrama
mientras <condición> hacer
sentencia 1
sentencia 2
….
Sentencia N
fin-mientras
2. Repetir-Hasta (do-while)
Se usa cuando se desea que se ejecute una iteración al menos una vez antes de comprobar la condición de
repetición. Primero se ejecuta el bucle y luego se comprueba la condición, para repetir o no el bucle. El
número mínimo de veces que se repite es 1. El bucle se sigue repitiendo mientras la condición que se
evalúa sea falso.
Pseudocódigo Diagrama
repetir
sentencia 1
sentencia 2
….
Sentencia N
hasta-que <condición>
11
valor del índice sea menor o igual a un valor final: si esto se cumple, se ejecuta el bucle; si no se cumple, se
ignora el bucle y se continúa con el resto del algoritmo.
Pseudocódigo Diagrama
Desde v vi hasta vf <inc / dec> hacer
sentencia 1
sentencia 2
….
sentencia N
fin-desde <condición>
12