Documentos de Académico
Documentos de Profesional
Documentos de Cultura
de Computación
Materia
Programación Lógica
Analista de Sistemas de Computación
Programación Lógica
Tema 2
2
CONCEPTO DE ALGORITMO
La resolución de un problema necesita del diseño de un algoritmo que resuelva el pro-
blema propuesto.
Definimos un algoritmo como una secuencia ordenada de pasos, de manera tal que al
seguirlos se obtenga el resultado deseado. Un algoritmo posee tres características:
finito en tiempo: debe tener un número finito de pasos, en algún momento debe
finalizar
Los algoritmos son independientes del lenguaje de programación. Para llevar esto a lo
diario, por ejemplo, una receta de una torta puede estar escrita en inglés, castellano o
portugués, pero cualquiera sea el idioma, los pasos para realizarla siempre serán los
mismos.
Los algoritmos suelen ser más importantes que los lenguajes de programación o las
computadoras. Los lenguajes de programación son solo un medio para expresar el algo-
ritmo y las computadoras un procesador para ejecutarlo. Ambos son un medio para con-
seguir un fin.
3
EJEMPLOS DE ALGORITMOS
1) Algoritmo que permita poner en movimiento un auto. Los pasos podrían ser:
3) Se desea ingresar nuevos libros a una biblioteca. ¿Cuáles serían los pasos a realizar
para ello?:
4
g) Si hay más libros, se repetirá desde el paso 3) hasta el 7) inclusive; si no hay más
libros que ingresar, cerrar la biblioteca
h) Fin del algoritmo
En todos los casos, primero se debe desarmar el problema en pasos sencillos, concre-
tos y que los entienda cualquier persona, luego se debe indicar lo más claro posible el
orden en que deben ejecutarse dichos pasos.
Un comienzo o inicio
Bien definido, es decir que si se sigue varias veces el algoritmo con igual conjunto de
datos se debe obtener el mismo resultado.
Tener en cuenta todas las situaciones que pueden plantearse
De fácil lectura e interpretación
Ser finito
Diseñado de manera independiente del lenguaje de programación
5
VARIABLES Y CONSTANTES
Una variable es un dato cuyo valor puede ser modificado durante la ejecución de un pro-
ceso. Cuando nos referimos a una variable, lo que hacemos es hacer referencia a una
posición de la memoria principal donde se va a alojar un valor. Si este valor se modifica
en algún momento, el nuevo valor sustituirá al que existía anteriormente.
PI = 3,141592
NOMBRE=”Juan Pérez”
Este último ejemplo es una constante tipo cadena. Se denomina cadena a la secuencia
de caracteres y nótese que esta entre “”.
6
EXPRESIONES
Las expresiones son combinaciones de constantes, variables, símbolos de operación,
paréntesis y nombres de funciones especiales.
Una expresión consta de operandos que pueden ser constantes o variables, y operado-
res que son aquellos símbolos que permiten concatenar cada uno de los argumentos que
intervienen en una operación. Pueden ser:
Operadores Aritméticos: junto con las variables numéricas formas las expresiones
aritméticas. Ellos son:
+ Suma 4+1=5
- Resta 5–2=3
* Multiplicación 5 * 2= 10
/ División 2 / 3 = 0.666
^ Potenciación 2^3=8
- Negativos -(1.5) = - 1.5
\ División entera 22 \ 5 = 4
MOD Resto de la división MOD(22,5) = 2
Hay que tener en cuenta que no todos los operadores aritméticos existen en todos
los lenguajes de programación, tal es el caso por ejemplo del MOD.
Ejemplos de representación
5x7 se representa 5 * 7
se representa 6 / 3
3 se representa 3 ^ 7
7
Operadores Relacionales: permiten obtener, en una comparación, un resultado ver-
dadero o falso. Ellos son:
= Igual 13 = 13 Verdadero
Operadores concatenación: es el único operador que permite operar entre si dos datos
de tipo alfanumérico, el resultado es una cadena de texto que contiene las dos cadenas
unidas una continuación de la otra
Casi todas las operaciones requieren que existan dos operandos, uno a derecha y otro a
izquierda, por eso es que a la mayoría se los clasifca cómo de tipo binario. Con las
siguientes excepciones :
El operador NOT ( ~ ) solo admite un operando, por lo tanto se lo clasifca cómo operador
monario.
El operador menos ( - ) se puede utilizar para realizar una sustracción, con lo cual es del
tipo binario, pero también se lo puede utilizar como operador de cambio de signo, actuando
en este caso como monario.
8
Prioridad de los operadores
9
INSTRUCCIONES
Las instrucciones son cada una de las acciones que intervienen en la resolución de un
problema. Se pueden dividir en:
Instrucciones de Entrada: son aquellas que permiten leer distintos valores y asignar-
los a determinadas variables. Esta operación implica introducir datos en la memoria
principal de la computadora a través de cualquier periférico de entrada (teclado, tarje-
tas perforadas, unidades de disco, etc.)
Instrucciones de Salida: son aquellas que permiten extraer datos desde la memoria
principal de la computadora a través de cualquier periférico de salida (impresora, pan-
talla, unidades de disco, etc.)
No se puede asignar valores de tipo caracter a una variable de tipo numérica o un valor
numérico a una variable de tipo carácter. Se presentará un error si se trata de hacerlo.
10
cución de una línea o grupo de líneas del programa que cumplen o no con una o va-
rias condiciones.
ESTRUCTURAS
Se pueden considerar tres divisiones a saber:
1) Inicial, donde:
a) Se inicializan variables que se utilizarán
b) Se abren archivos
c) Se ingresan valores que deben ir fuera del ciclo
2) Ciclo o Repetitiva: es aquella parte del programa que se repetirá un número determi-
nado de veces o hasta que se cumpla una condición.
3) Final, donde:
a) Se muestran resultados finales obtenidos
b) Se cierran archivos.
11
ACTIVIDADES
1. Realice un algoritmo para:
a) Preparar un jugo de naranja
b) Para comprar una docena de medialunas en la panadería de la esquina de casa
b) +
c)
12