Está en la página 1de 18

Algorítmica y Programación

UNIDAD I

ALGORITMOS Y PROGRAMAS
Algorítmica y Programación
Propósito de la Unidad: Desarrolla algoritmos, aplicando la metodología para resolver problemas de procesamientos de
datos, haciendo uso de las formas de representarlo, con una actitud creativa, autónoma, responsable y abierto al cambio tanto
de forma individual como colectivamente.
Contenido
• -Las variables: clasificació n de variables segú n su
• Algoritmos: contenido y su uso.
-Partes de un algoritmo, Características • -Constantes
-Formas de representar un algoritmo: Lenguaje • Metodología para el Análisis y Planteamiento
Natural, pseudocó digo y diagrama de flujo. de Problemas
-Diseñ o de un algoritmo. - Identificació n del Problema
-Traza de un algoritmo (corrida en frío). -Identificació n de datos: entradas y salidas,
• Elementos para construir un algoritmo : descripció n de operaciones a utilizar (cá lculos).
-Instrucciones o Sentencias -Descripció n de los pasos para llegar a la solució n
-Datos y Entidades Primitivas: Tipos y diferencia (procesos).
entre dato e informació n. • Programas:
-Los Operadores: tipos de operadores, usos .-Elementos bá sicos, tipos de programas, pasos para
-Las Expresió n: Evaluació n de expresiones. realizar un programa
-Los Identificadores: Reglas de escritura. .- Los lenguajes de programació n y sus tipos
.- Diferencia entre algoritmo y programa
Algorítmica y Programación
Algoritmos

La primera acepción de algoritmo que


ofrece la Real Academia,
«Conjunto ordenado y finito de operaciones •Entrada de datos: Son los datos
que permite hallar la solució n de un necesarios que el algoritmo necesita
problema» para ser ejecutado.
Definición de algoritmo según Joyanes
Aguilar(2008): •Proceso: Es la secuencia de pasos
para ejecutar el algoritmo.
En su libro Fundamentos de programació n,
Luis Joyanes Aguilar, define al •Salida: es el resultado obtenido
algoritmo como un método para resolver un después de la ejecució n del algoritmo.
problema.
Partes de un algoritmo:
Algorítmica y Programación

Algoritmos
Características Formas de Representar Algoritmos
 Debe ser preciso: • Lenguaje Natural: Este algoritmo
Indica el orden de realizació n de cada describe textualmente paso a paso
paso dentro del proceso. cada una de las actividades a
 Debe ser definido: realizar.
Si se sigue un algoritmo dos veces, se • Pseudocódigo: no es realmente un
debe obtener el mismo resultado cada vez. có digo sino una imitació n .
 Debe ser finito: • Diagramas de Flujo: Son la
Si se sigue un algoritmo, se debe representació n grá fica de la solució n
terminar en algú n momento ; algorítmica de un problema.
Algorítmica y Programación

Representación Gráfica de los Algoritmos


Diagramas de flujo:
 Pseudocódigo:
Palabras Reservadas
Inicio / Fin

Leer / Escribir
+-*/
Si - entonces
Mientras/
desde/Repetir
Algorítmica y Programación
Diseño de un Algoritmo
Diseño de un Algoritmo : Describe la secuencia ordenada Inicio
de pasos sin ambigüedades, que conducen a la solución de
un problema .
N1, N2, S;
Algoritmo SUMA

Variables
entero: N1, N2, S;
N1, N2;

Inicio
Leer (N1, N2); S  N1 + N2;
S  N1 + N2;
Imprimir (“ La suma de los nú meros
es:”, S); S
Fin

Fin
Algorítmica y Programación
La traza de un algoritmo (o programa) indica la secuencia de acciones (instrucciones) de
su ejecución, así como, el valor de las variables del algoritmo (o programa) después de
cada acción (instrucción).
Algorítmica y Programación

Elementos para construir un algoritmo


Instrucciones: Tipos de datos
Son las acciones que van a ser ejecutadas por Con respecto a este tema, Joyanes Aguilar(2008)
el computador para resolver un problema define a un dato «como la expresión general
Tipos que describe los objetos con los cuales opera
una computadora». La mayoría de las
 Instrucciones de Inicio/Fin : indica el computadoras pueden trabajar con varios tipos
Inicio y el Fin del algoritmo (modos) de datos.
Los datos de entrada se transforman por el
 Instrucciones de lectura: Solicita al programa, después de las etapas intermedias,
usuario el ingreso de datos desde un en datos de salida(información)
Existen dos tipos de datos:
dispositivo de entrada por ejemplo el simples (sin estructura) y compuestos
teclado. (estructurados).
Diferencia entre datos e Información:
 Instrucciones de escritura: Muestra los
resultados a través de un dispositivo de
salida por ejemplo la pantalla, impresora,
etc.
Algorítmica y Programación

Elementos para construir un algoritmo


Tipos de Datos
DINAMICOS
Pilas
Colas
Listas
Á rboles
Algorítmica y Programación

Elementos para construir un algoritmo


Operadores Expresiones
Son elementos que relacionan de forma Una Expresión está compuesta por
diferente, los valores de una o más valores, funciones, constantes y/o
variables y/o constantes. Es decir, los variables, o por una combinación de los
operadores nos permiten manipular anteriores mediante operadores.
valores. Son Expresiones:
• Un valor (1.3, "Jorge”), area=b*h/2
Evaluación de expresiones
Hay tres reglas de prioridad a seguir para
evaluar una expresión:
• Primero, los paréntesis (si tiene)
• Después, seguir el orden de prioridad
de operadores(*./,+,-)
• Por último, si aparecen dos o más
operadores iguales, se evalúan de
izquierda a derecha.
Algorítmica y Programación
Elementos para construir un algoritmo
Identificadores
Los identificadores son nombres que se dan a los Variables
elementos utilizados para resolver un problema y las Variables son espacios de trabajo
poder diferenciar unos de otros. Al asignar nombres (contenedores) reservados para guardar datos
(identificadores) se deben tener en cuenta ciertas (valores). El valor que contiene una variable es
reglas: el del último dato asignado a ésta.
• Los nombres pueden estar formados por una Según su uso:
combinación de letras y números (saldoMes, Contadores: que consiste en almacenar en una
salario, fecha2, baseTriángulo, etc). variable (A) el valor de ella misma (A) más un
• El primer carácter de un nombre debe ser una valor constante (1); (A = A + 1) Es muy útil para
letra. controlar el número de veces que debe
• La mayoría de los lenguajes de programación ejecutarse un grupo de instrucciones.
diferencian las mayúsculas de las minúsculas. Los Acumuladores consisten en almacenar en
• Los nombres deben ser nemotécnicos, con solo una variable (A) el valor de ella misma (A) más
leerlos se puede entender lo que contienen. otro valor variable (B). Es muy útil para calcular
Constantes: sumatorias. (A =A + B)
Las Constantes se crean de la misma forma que las Según su contenido: Numéricas, alfanuméricas,
variables y consisten en datos que, luego de ser Lógicas
asignados, no cambian en ninguna instrucción del
Algoritmo. Pueden contener constantes
matemáticas (pi) o generadas para guardar valores
fijos (3.8, "Jorge", etc).
Algorítmica y Programación
Metodología para el análisis y planteamiento del problema
Joyanes Aguilar(2008), señala que el proceso
de diseño de un programa es un “proceso DENTIFICACIÓN DE LOS DATOS NECESARIOS
(ENTRADAS)
creativo”, en el cual se puede considerar una La entrada, se considera como todos los
serie de fases o pasos comunes, que datos que hay que ingresar para la resolución
generalmente deben seguir los del problema.
programadores: Especificaciones de entrada: ¿Que datos son
IDENTIFICACIÓN DEL PROBLEMA de entrada? ¿Cuántos datos se introducirán?
Consiste en entender de qué se trata el ¿Cuántos son datos de entrada válidos?
problema planteado y esbozar su posible IDENTIFICACIÓN DE LOS DATOS A OBTENER
solución, concluyendo con una clara (SALIDAS)
Entendido el problema (que se desea
definición , se debe tener en cuenta tres obtener del computador), para resolverlo es
aspectos: preciso analizar:
1º qué es lo que nos piden, es decir, Especificaciones de salida
definición del resultado o solución deseada ¿Cuáles son los datos de salida?
(para qué). ¿Cuántos datos de salida se
2º cómo obtener lo que nos piden (qué producirán?
hacer). ¿Qué formato y precisión tendrán
los resultados?
3º qué necesitamos para obtener los
resultados pedidos (con qué).
Algorítmica y Programación
Metodología para el análisis y planteamiento del problema
DESCRIPCION DE LAS OPERACIONES A
UTILIZAR(CALCULOS)
DESCRIPCION DE LOS PASOS PARA LA
SOLUCION DEL PROBLEMA (PROCESO)
Los cálculos son determinados durante el En esta etapa se debe tomar en cuenta las
proceso de planificación y estructuración del herramientas y técnicas especiales en la
sistema. determinación de los requerimientos.
Estos cálculos están íntimamente conectados Una de estas herramientas es el uso de
con el tipo de dato de entrada que se espera diagramas de flujo de datos para graficar las
entradas, los procesos y las salidas de las
recibir y la salida que nos interesa obtener,
funciones del negocio en una forma gráfica
todo previamente planificado según el caso, estructurada.
se formulan operaciones precisas ya sean
lógicas o aritméticas representadas como
instrucciones a seguir.
Algorítmica y Programación
Metodología para el análisis y planteamiento del problema

Ejemplo
Para hacer la nómina de los mejores alumnos de una
carrera, se necesita saber:

ENTRADA: Los datos de cada uno de los alumnos


PROCESO: La fórmula matemática para calcular el
promedio de notas es:
(nota 1 + nota 2 + nota 3 + .....+ nota n) / cantidad de
notas

SALIDA: El modelo del informe donde se desean


imprimir el promedio de los alumnos.
Algorítmica y Programación

Programas
Programas
Conjunto de instrucciones, con una secuencia Tipos de Programas:
lógica, escrito en algún Lenguaje de Programación • Programas lineales: consisten en una
que permite resolver un Problema. secuencia de acciones primitivas (su
Elementos básicos: ejecución es lineal en el orden en que
• Entrada de datos: la constituyen todas aquellas han sido escritas).
instrucciones que toman datos de un dispositivo • Programas alternativos: consisten en el
externo, almacenándolos en la memoria central para anidamiento de acciones alternativas (las
que puedan ser procesados. tablas de decisión se realizan mediante
• Proceso o algoritmo: está formado por las programas alternativos).
instrucciones que modifican los objetos a partir de su • Programas cíclicos: son aquellos en los
estado inicial hasta el estado final, dejando éstos que un conjunto de acciones se repiten
disponibles en la memoria central. un número determinado o indeterminado
• Salida de resultados: conjunto de instrucciones que de veces (un programa de este tipo se
toman los datos finales de la memoria central y los denomina bucle).
envían a los dispositivos externos.
Algorítmica y Programación
Paso para realizar un programa
Programas
Algoritmo SUMA
CABECERA

Variables
entero: N1, N2, S;
BLOQUE DE DECLARACIONES

Inicio
Leer (N1, N2);
S  N1 + N2;
BLOQUE DE INSTRUCCIONES
Imprimir (“ La suma de los nú meros es:”, S);
Fin
Algorítmica y Programación

Lenguajes de Programación
Joyanes Aguilar señala que los lenguajes de programación sirven para escribir programas que
permitan la comunicación usuario/máquina. Unos programas especiales llamados traductores
(compiladores o intérpretes) convierten las instrucciones escritas en lenguajes de programación
en instrucciones escritas en lenguajes máquina (0 y 1, bits) que ésta pueda entender.
CLASIFICACION:
 Lenguajes Maquina: Codificació n Binaria. (1110110001)
 Lenguaje de bajo nivel: nemotecnicoss, simbolos,
 Lenguajes de Alto nivel: Uso de Compiladores e interpretes.
 Lenguajes de Cuarta Generación: tienen capacidad para bases de datos,
 Lenguajes de Quinta Generación: Desarrollo visual. Interfaces graficas avanzadas.
Algorítmica y Programación
Diferencias entre Algoritmos y Programas
• La diferencia entre un algoritmo y un programa, es que si bien ambos hacen referencia una
serie de instrucciones, los algoritmos pueden estar escritos en có digo o en lenguaje
natural, mientras que los programas só lo pueden estar escritos en lenguaje de
programació n.
• Ademá s, los algoritmos pueden ser ejecutados por un ser humano, mientras que los
programas está n diseñ ados para ser ejecutados por má quinas.

También podría gustarte