Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Unidad I
Unidad I
ALGORITMOS
1.1 Definicin
Un algoritmo es una serie de pasos organizados que describe el proceso que se debe seguir, para
dar solucin a un problema especfico.
1.2 Tipos
Cualitativos: Son aquellos en los que se describen los pasos utilizando palabras.
Cuantitativos: Son aquellos en los que se utilizan clculos numricos para definir los pasos
del proceso.
1.3 Caractersticas
Las caractersticas fundamentales que debe cumplir todo algoritmo son:
2
3
Finitud: Un algoritmo tiene que acabar siempre tras un nmero finito de pasos. (Un
procedimiento que tiene todas las caractersticas de un algoritmo salvo que posiblemente falla
en su finitud, se conoce como mtodo de clculo.)
Definibilidad: Cada paso de un algoritmo debe definirse de modo preciso; las acciones a
realizar han de estar especificadas para cada caso rigurosamente y sin ambigedad.
Conjunto de entradas: Debe existir un conjunto especificado de objetos, cada uno de los
cuales constituye los datos iniciales de un caso particular del problema que resuelve el
algoritmo. A este conjunto se le denomina conjunto de entradas del algoritmo.
Conjunto de salidas: Debe existir un nmero especificado de objetos, cada uno de los cuales
constituye la salida o respuesta que debe obtener el algoritmo para los diferentes casos
particulares del problema. A este conjunto se le denomina conjunto de salidas del algoritmo.
Para cada entrada del algoritmo, debe existir una salida asociada que constituye la solucin al
problema particular determinado por dicha entrada.
Efectividad: Un algoritmo debe ser efectivo. Esto significa que todas las operaciones a realizar
por el algoritmo deben ser lo bastante bsicas para poder ser efectuadas de modo exacto, y en
un lapso de tiempo finito por el procesador que ejecute el algoritmo.
Algoritmo <nombre_del_algoritmo>
Inicio
Definicin de constantes
Declaracin de variables
Sentencia 1
Sentencia 2
Sentencia n
Fin
1.4 Lenguajes Algoritmicos
Es una serie de smbolos y reglas que se utilizan para describir de manera explcita un proceso.
Tipos de Lenguajes Algoritmicos
Datos Numricos: Permiten representar valores escalares de forma numrica, esto incluye
a los nmeros enteros y los reales. Este tipo de datos permiten realizar operaciones
aritmticas comunes.
Datos lgicos: Son aquellos que solo pueden tener dos valores (cierto o falso) ya que
representan el resultado de una comparacin entre otros datos (numricos o
alfanumricos).
Datos alfanumricos (string): Es una secuencia de caracteres alfanumricos que permiten
representar valores identificables de forma descriptiva, esto incluye nombres de personas,
direcciones, etc. Es posible representar nmeros como alfanumricos, pero estos pierden
su propiedad matemtica, es decir no es posible hacer operaciones con ellos. Este tipo de
datos se representan encerrados entre comillas.
1.6 Expresiones
Las expresiones son combinaciones de constantes, variables, smbolos de operacin, parntesis y
nombres de funciones especiales. Por ejemplo:
a+(b + 3)/c
Cada expresin toma un valor que se determina tomando los valores de las variables y constantes
implicadas y la ejecucin de las operaciones indicadas.
Una expresin consta de operadores y operandos. Segn sea el tipo de datos que manipulan, se
clasifican las expresiones en:
Aritmticas
Relacinales
Lgicas
Aritmticos
Los operadores aritmticos permiten la realizacin de operaciones matemticas con los valores
(variables y constantes).
Los operadores aritmticos pueden ser utilizados con tipos de datos enteros o reales. Si ambos son
enteros, el resultado es entero; si alguno de ellos es real, el resultado es real.
Operadores Aritmticos
+ Suma
- Resta
Multiplicacin
/ Divisin
Mod Modulo (residuo de la divisin entera)
Ejemplos:
Expresin
Resultado
7/2
3.5
12 mod 7
4+2*5
14
Todas las expresiones entre parntesis se evalan primero. Las expresiones con parntesis
anidados se evalan de dentro a fuera, el parntesis ms interno se evala primero.
Dentro de una misma expresin los operadores se evalan en el siguiente orden.
o ^ Exponenciacin
o *, /, mod Multiplicacin, divisin, modulo.
o +, - Suma y resta.
Los operadores en una misma expresin con igual nivel de prioridad se evalan de
izquierda a derecha.
Ejemplos:
4 + 2 * 5 = 14
23 * 2 / 5 = 9.2
46 / 5 = 9.2
3 + 5 * (10 - (2 + 4)) = 23
3 + 5 * (10 - 6) =
3 + 5 * 4 = 3 + 20 = 23
2.1 * (1.5 + 3.0 * 4.1) = 28.98 2.1 * (1.5 + 12.3) = 2.1 * 13.8 = 28.98
1.7.2 Relacinales
Operadores Relacinales
Mayor que
< Menor que
= Mayor o igual que
< = Menor o igual que
< > Diferente
== Igual
Ejemplos:
Si a = 10 b = 20 c = 30
1.7.2
a+b>c
Falso
a-b<c
Verdadero
a - b == c
Falso
a*b<>c
Verdadero
Lgicos
Estos operadores se utilizan para establecer relaciones entre valores lgicos.
Estos valores pueden ser resultado de una expresin relacional.
Not
And
Or
()
^
*, /, Mod, Not
+, -, And
>, <, > =, < =, < >, ==, Or
Ejemplos:
a = 10 b = 12 c = 13 d =10
1.8 Identificadores
Los identificadores representan los datos de un programa (constantes, variables, tipos de datos).
Un identificador es una secuencia de caracteres que sirve para identificar una posicin en la
memoria de la computadora, que permite acceder a su contenido.
Ejemplo:
Nombre
Num_hrs
Calif2
Reglas para formar un identificador
Constantes y Variables
Clasificacin de variables
Por su Contenido
Variable Numricas: Son aquellas en las cuales se almacenan valores numricos, positivos
o negativos, es decir almacenan nmeros del 0 al 9, signos (+ y -) y el punto decimal.
Ejemplo:
iva=0.15 pi=3.1416 costo=2500
Variables Lgicas: Son aquellas que solo pueden tener dos valores (cierto o falso) estos
representan el resultado de una comparacin entre otros datos.
Variables Alfanumricas: Esta formada por caracteres alfanumricos (letras, nmeros y
caracteres especiales).
Ejemplo:
letra=a apellido=lopez direccion=Av. Libertad #190
Por su Uso
Ejemplo:
suma=a+b/c
Contadores: Se utilizan para llevar el control del nmero de ocasiones en que se realiza
una operacin o se cumple una condicin. Con los incrementos generalmente de uno en
uno.
Acumuladores: Forma que toma una variable y que sirve para llevar la suma acumulativa
de una serie de valores que se van leyendo o calculando progresivamente.