Está en la página 1de 11

ALGORITMOS

Para la palabra algoritmo (del griego y latn, dixit algorithmus y este abrev. del r. cls.
hisbu lubr, clculo mediante cifras arbigas) existen diversos significados, en su
mayora muy similares:
Conjunto ordenado y finito de operaciones que permite hallar la solucin de un problema.
Descripcin exacta de la secuencia en que se ha de realizar un conjunto de actividades
tendientes a resolver un determinado tipo de problema o procedimiento.
Mtodo y notacin en las distintas formas del clculo.
Descripcin exacta de la secuencia en que se ha de realizar un conjunto de actividades
tendientes a resolver un determinado tipo de problema o procedimiento.

La palabra algoritmo se deriva de la traduccin al latn de la palabra rabe alkhowarizmi,


nombre de un matemtico y astrnomo rabe que escribi un tratado sobre manipulacin
de nmeros y ecuaciones en el siglo IX.
Un algoritmo es una serie de pasos organizados que describe el proceso que se debe
seguir, para dar solucin a un problema especifico
Tipos de Algoritmos

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

Lenguajes Algortmicos
Es una serie de smbolos y reglas que se utilizan para describir de manera explcita un
proceso.
Tipos de Lenguajes Algortmicos

Grficos: Es la representacin grfica de las operaciones que realiza un algoritmo


(diagrama de flujo).

No Grficos: Representa en forma descriptiva las operaciones que debe realizar


un algoritmo.

Definicin del Problema


Esta fase est dada por el enunciado del problema, el cual requiere una definicin clara y
precisa. Es importante que se conozca lo que se desea que realice la computadora;

Rosario Ivonne Sosa Lorenzo


Ing. Civil
Grupo CE
No. de Control: 11160186

mientras esto no se conozca del todo no tiene mucho caso continuar con la siguiente
etapa.
Anlisis del Problema
Una vez que se ha comprendido lo que se desea de la computadora, es necesario definir:
Los datos de entrada.
Cul es la informacin que se desea producir (salida)
Los mtodos y frmulas que se necesitan para procesar los datos.
Una recomendacin muy prctica es el que nos pongamos en el lugar de la computadora
y analicemos que es lo que necesitamos que nos ordenen y en que secuencia para
producir los resultados esperados

Caractersticas:
Las caractersticas fundamentales que debe cumplir todo algoritmo son:

Ser definido: Sin ambigedad, cada paso del algoritmo debe indicar la accin a
realizar sin criterios de interpretacin.

Ser finito: Un nmero especfico y numerable de pasos debe componer al


algoritmo, el cual deber finalizar al completarlos.

Tener cero o ms entradas: Datos son proporcionados a un algoritmo como


insumo (o estos son generados de alguna forma) para llevar a cabo las
operaciones que comprende.

Tener una o ms salidas: Debe siempre devolver un resultado; de nada sirve un


algoritmo que hace algo y nunca sabemos que fue. El devolver un resultado no
debe ser considerado como nicamente verlos en forma impresa o en pantalla,
como ocurre con las computadoras. Existen muchos otros mecanismos
susceptibles de programacin que no cuentan con una salida de resultados de
esta forma. Por salida de resultados debe entenderse todo medio o canal por el
cual es posible apreciar los efectos de las acciones del algoritmo.

Efectividad: El tiempo y esfuerzo por cada paso realizado debe ser preciso, no
usando nada ms ni nada menos que aquello que se requiera para y en su
ejecucin.

Para que un algoritmo sea funcional debe incluir una serie de datos que le dan sentido a
lo que realiza:
Tipos De Datos

Rosario Ivonne Sosa Lorenzo


Ing. Civil
Grupo CE
No. de Control: 11160186

Todos los datos tienen un tipo asociado con ellos. Un dato puede ser un simple carcter,
tal como `b', un valor entero tal como 35. El tipo de dato determina la naturaleza del
conjunto de valores que puede tomar una variable.
Numricos
Simples Lgicos
Alfanumricos (string)
Tipos de datos
Arreglos (Vectores, Matrices)
Estructurados Registros (Def. por el Archivos usuario)
Apuntadores
Tipos de Datos Simples

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.

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

Operadores y Operandos

Rosario Ivonne Sosa Lorenzo


Ing. Civil
Grupo CE
No. de Control: 11160186

Operadores: Son elementos que relacionan de forma diferente, los valores de una
o ms variables y/o constantes. Es decir, los operadores nos permiten manipular
valores.

Aritmticos
Tipos de Operadores Relacinales
Lgicos

Operadores 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.
Operando (Operador) Operando
Valor
(constante o variable)
Operadores Aritmticos
+ Suma
- Resta
* Multiplicacin
/ Divisin
Mod Modulo (residuo de la divisin entera)
Ejemplos:
Expresin Resultado
7 / 2 3.5
12 mod 7 5
4 + 2 * 5 14
Prioridad de los Operadores Aritmticos

Todas las expresiones entre parntesis se evalan primero. Las expresiones con
parntesis anidados se evalan de dentro a fuera, el parntesis mas interno se
evala primero.

Dentro de una misma expresin los operadores se evalan en el siguiente orden.

1.- ^ Exponenciacin
2.- *, /, mod Multiplicacin, divisin, modulo.
3.- +, - Suma y resta.

Rosario Ivonne Sosa Lorenzo


Ing. Civil
Grupo CE
No. de Control: 11160186

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
3.5 + 5.09 - 14.0 / 40 = 5.09 3.5 + 5.09 - 3.5 = 8.59 - 3.5 = 5.09
2.1 * (1.5 + 3.0 * 4.1) = 28.98 2.1 * (1.5 + 12.3) = 2.1 * 13.8 = 28.98
Operadores Relacinales:

Se utilizan para establecer una relacin entre dos valores.

Compara estos valores entre si y esta comparacin produce un resultado de


certeza o falsedad (verdadero o falso).

Los operadores relacinales comparan valores del mismo tipo (numricos o


cadenas)

Tienen el mismo nivel de prioridad en su evaluacin.

Los operadores relacinales tiene menor prioridad que los aritmticos.

Operadores Relacinales
> Mayor que
< Menor que
> = Mayor o igual que
< = Menor o igual que
< > Diferente
= Igual
Ejemplos:
Si a = 10 b = 20 c = 30
a + b > c Falso
a - b < c Verdadero
a - b = c Falso
a * b < > c Verdadero

Rosario Ivonne Sosa Lorenzo


Ing. Civil
Grupo CE
No. de Control: 11160186

Ejemplos no lgicos:
a<b<c
10 < 20 < 30
T < 30 (no es lgico porque tiene diferentes operandos)
Operadores Lgicos:

Estos operadores se utilizan para establecer relaciones entre valores lgicos.

Estos valores pueden ser resultado de una expresin relacional.

Operadores Lgicos
And Y
Or O
Not Negacin
Operador And
Operando1 Operador Operando2 Resultado
T AND T T
TFF
FTF
FFF
Operador Or
Operando1 Operador Operando2 Resultado
T OR T T
TFT
FTT
FFF
Operador Not
Operando Resultado
TF
FT
Ejemplos:
(a < b) and (b < c)
(10<20) and (20<30)
T and T
T
Prioridad de los Operadores Lgicos

Rosario Ivonne Sosa Lorenzo


Ing. Civil
Grupo CE
No. de Control: 11160186

Not
And
Or
Prioridad de los Operadores en General
1.- ( )
2.- ^
3.- *, /, Mod, Not
4.- +, -, And
5.- >, <, > =, < =, < >, =, Or
Ejemplo:
a = 10 b = 12 c = 13 d =10
((a > b)or(a < c)) and ((a = c) or (a > = b))
FTFF
TF
F

Rosario Ivonne Sosa Lorenzo


Ing. Civil
Grupo CE
No. de Control: 11160186

Diagrama de Flujo
Un diagrama de flujo es la representacin grfica de un algoritmo. Tambin se puede decir
que es la representacin detallada en forma grfica de como deben realizarse los pasos
en la computadora para producir resultados.
Esta representacin grfica se da cuando varios smbolos (que indican diferentes
procesos en la computadora), se relacionan entre si mediante lneas que indican el orden
en que se deben ejecutar los procesos.
Los smbolos utilizados han sido normalizados por el instituto norteamericano de
normalizacin (ANSI).
SMBOLO DESCRIPCIN

Rosario Ivonne Sosa Lorenzo


Ing. Civil
Grupo CE
No. de Control: 11160186

Reglas Bsicas
1. Todos los smbolos han de estar conectados
2. A un smbolo de proceso pueden llegarle varias lneas
3. A un smbolo de decisin pueden llegarle varias lneas, pero slo saldrn dos.
4. A un smbolo de inicio nunca le llegan lneas.
5. De un smbolo de fin no parte ninguna lnea.
Recomendaciones para el diseo de Diagramas de Flujo

Se deben se usar solamente lneas de flujo horizontales y/o verticales.

Se debe evitar el cruce de lneas utilizando los conectores.

Se deben usar conectores solo cuando sea necesario.

No deben quedar lneas de flujo son conectar.

Se deben trazar los smbolos de manera que se puedan leer de arriba hacia abajo
y de izquierda a derecha.

Todo texto escrito dentro de un smbolo deber ser escrito claramente, evitando el
uso de muchas palabras

Ejemplos:
1. Hacer el diagrama de flujo para sumar dos nmeros ledos por teclado y escribir el
resultado.

Rosario Ivonne Sosa Lorenzo


Ing. Civil
Grupo CE
No. de Control: 11160186

Leemos el primer nmero y lo dejamos en A


Leemos el segundo nmero y lo dejamos en B
Sumamos A y B, y dejamos el resultado en C
Escribimos C
2. La sucesin de Fibonacci se define de la siguiente forma: a1=1, a2=1 y an=an1+an-2 para n>2, es decir, los dos primeros son 1 y el resto cada uno es la suma
de los dos anteriores, los primeros son: 1, 1, 2, 3, 5, 8, 13, 21, ... Hacer un
diagrama de flujo para calcular el N-simo trmino de la sucesin.

Dado N, el proceso es el siguiente:


- si N2 se escribe directamente 1 y se acaba.
- en otro caso se guardan en A y B los 2 ltimos (al principio 1) y se suman, pasando
despus a llamar A al antiguo B, y B a la suma. Se decrementa N y cuando valga 2, en B
tenemos lo que queremos.
(1) Leemos N, supongamos N=4.
(2) N2? NO
(3) A=1
(4) B=1
(5) C=A+B=1+1=2
Rosario Ivonne Sosa Lorenzo
Ing. Civil
Grupo CE
No. de Control: 11160186

(6) A=B=1
(7) B=C=2
(8) N=N-1=4-1=3
(9) N=2? NO
(5) C=A+B=1+2=3
(6) A=B=2
(7) B=C=3
(8) N=N-1=3-1=2
(9) N=2? SI
(10) Escribimos B, es decir 3.

Rosario Ivonne Sosa Lorenzo


Ing. Civil
Grupo CE
No. de Control: 11160186

También podría gustarte