Sei sulla pagina 1di 2

Definicin de algoritmo

Un algoritmo es una secuencia finita de instrucciones; cada una de estas


instrucciones tiene un significado preciso y se puede ejecutar con una cantidad
finita de esfuerzo en un tiempo finito.
Un algoritmo se define como un mtodo que se realiza paso a paso para la
solucin de un problema que termina en un nmero finito de paso
En el mbito de la computacin, los Algoritmos son una herramienta que permite
describir claramente un conjunto finito de instrucciones, ordenadas
secuencialmente y libres de ambigedad, que debe llevar a cabo un computador
para lograr un resultado previsible. Vale la pena recordar que un programa de
computador consiste de una serie de instrucciones muy precisas y escritas en un
lenguaje de programacin que el computador entiende (Logo, Java, Pascal, etc).
En resumen, un Algoritmo es una secuencia ordenada de instrucciones, pasos o
procesos que llevan a la solucin de un determinado problema. Los hay tan
sencillos y cotidianos como seguir la receta del mdico, abrir una puerta, lavarse
las manos, etc; hasta los que conducen a la solucin de problemas muy
complejos.
Definicin de Algoritmo
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.
1.4 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.
1.5 Lenguajes Algoritmicos
Es una serie de smbolos y reglas que se utilizan para describir de manera
explcita un proceso.
Tipos de Lenguajes Algoritmicos
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 (pseudocodigo).
Concepto Algoritmo: es un mtodo para resolver un problema mediante
una serie de pasos definidos, precisos y finitos.
Preciso: implica el orden de realizacin de cada uno de los pasos:
Definido: si se sigue dos veces, se obtiene el mismo resultado.
Finito: Tiene un numero determinado de pasos, implica que tiene un fin

SECUENCIALES
Estas siguen un proceso paso a paso, una secuencia. Estas se siguen por
flechas, constan de un inicio y un fin.
SELECTIVAS:
En estas encontramos las de alternativa simple, que consiste en un si y un no
si se cumple una condicin haga un determinado procedimiento; si no se cumple
realice otro procedimiento.
Otro tipo de estructura de control selectivo es la de alternativa mltiple, en este
tipo de estructura, segn sea la variable expresin; se le asignan una cantidad
de acciones para todos los valores hasta n acciones, teniendo en cuenta la lista
de errores por defecto; y despus el tipo de valores, con una salida
correspondiente a cada valor; y como en las anteriores se tiene en cuenta el error
por defecto, es decir, que el usuario introduzca un valor que no esta permitido.
REPETITIVAS
En las estructuras repetitivas se usan El ciclo mientras y El ciclo
para, cualquiera de las dos se usa por igual depende de el algoritmo que se
pretenda realizar; por ejemplo si utilizamos el ciclo mientras, sera para decir que
mientras se cumpla una condicin predeterminada, se har o no se har lo que se
quiere con el algoritmo. Con el ciclo para, decimos que para la condicin que
hallamos dicho predeterminado se har una accin otra accin
ESTRUCTURAS REPETITIVAS.
Las estructuras que repiten una secuencia de instrucciones un nmero
determinado de veces se denominan Bucles y se denomina Iteracin al hecho de
repetir la ejecucin de una secuencia de acciones. Entre las estructuras
repetitivas se encuentran:
Mientras (while)
Repetir (repeat)
Desde (for)
6.2 CONDICIONALES
La especificacin formal de algoritmos tiene realmente utilidad cuando el
algoritmo requiere una descripcin ms complicada que una lista sencilla
de instrucciones. Este es el caso cuando existen un nmero de posibles
alternativas resultantes de la evaluacin de una determinada condicin.
Las estructuras selectivas se utilizan para tomar decisiones lgicas; de ah que se
suelan denominar tambin estructuras de decisin o alternativas.
En las estructuras selectivas se evala una condicin y en funcin del resultado la
misma se realiza una opcin u otra. Las condiciones se especifican usando
expresiones lgicas. La representacin de una estructura selectiva se hace con
palabras en pseudocdigo (if, then, else o bien en espaol si, entonces, sino), con
una figura geomtrica en forma de rombo o bien con un tringulo en el interior de
una caja rectangular.
Las estructuras selectivas o alternativas pueden ser:
Simples
Doble
Mltiples
ALTERNATIVA SIMPLE (SI-ENTONCES/IF-THEN).
La estructura alternativa simple si-entonces (en ingls if-then o bien IF-THEN )
ejecuta una determinada accin cuando se cumple una determinada condicin. La
seleccin si-entonces evala la condicin y . .
Si la condicin es verdadera, entonces ejecuta la accin S1 (o acciones caso de
ser S1 una accin compuesta y constar de varias acciones).
Si la condicin es falsa, entonces no hacer nada.
**PSEUDOCDIGO EN ESPAOL**
Si <condicin> Entonces
<accin S1>
Fin_si
PSEUDOCDIGO EN INGLS
If <condicin> then
<accin S1>
end_if
ALTERNATIVA DOBLE ( SI-ENTONCES-SI_NO / IF - THEN - ELSE ).
La estructura anterior es muy limitada y normalmente se necesitar una
estructura que permita elegir entre dos opciones o alternativas posibles, en
funcin del cumplimiento o no de una determinada condicin.
Si la condicin C es verdadera, se ejecuta la accin S1 y, si es falsa, se ejecuta la
accin S2.
**PSEUDOCODIGO EN ESPAOL**
Si < condicin > entonces
< accin S1 >
si_no
<accin S2>
fin_si
PSEUDOCODIGO EN INGLES.
If < condicin > then
< accin S1 >
else
< accin S2 >
endif
ALTERNATIVAS MLTIPLES (SEGN _ SEA, CASO DE / CASE).
Cuando existen ms de dos elecciones (alternativas) posibles, es cuando se
presenta el caso de alternativas mltiples. Si el nmero de alternativas es grande
puede plantear serios problemas de escritura del algoritmo y naturalmente de
legibilidad.
La estructura de decisin mltiple evaluar una expresin que podr
tomar n valores distintos 1,2,3,4,..n . Segn que elija uno de estos valores en la
condicin, se realizar una de las n acciones, o lo que es igual, el flujo del
algoritmo seguir un determinado camino entre los n posibles.
**PSEUDOCDIGO**
En ingls la estructura de decisin mltiple se representa:
Case expresin of
[e1]: accin S1
[e2]: accin S2
:
[en]: accin Sn
else
accin Sx
end_case
Ejemplo:
Se desea disear un algoritmo que escriba los nombres de los das de la semana
en funcin del valor de una variable DIA introducida por teclado.
Los das de la semana son 7; por consiguiente, el rango de valores de DIA ser
1..7, y caso de que DIA tome un valor fuera de este rango se deber producir un
mensaje de error advirtiendo la situacin anmala.
Inicio
Leer DIA
Segn_sea DIA hacer
1:escribir('Lunes')
2: escribir('Martes')
3: escribir('Mircole')
4: escribir('Jueves')
5: escribir('Viernes')
6: escribir('Sabado')
7: escribir('Domingo')
else
escribir('Error')
fin_segn
fin

ESTRUCTURAS ALGORITMICAS
Las estructuras de operacin de programas son un grupo de formas de trabajo,
que permiten, mediante la manipulacin de variables, realizar ciertos procesos
especficos que nos lleven a la solucin de problemas. Estas estructuras se
clasifican de acuerdo con su complejidad en:
- Asignacin
Secuenciales - Entrada
- Salida
- Simples
Estructuras Condicionales
Algoritmicas - Mltiples
- Hacer para
Cclicas - Hacer mientras
- Repetir hasta
5.1. Estructuras Secuenciales
La estructura secuencial es aquella en la que una accin (instruccin) sigue a otra
en secuencia. Las tareas se suceden de tal modo que la salida de una es la
entrada de la siguiente y as sucesivamente hasta el fin del proceso. Una
estructura secuencial se representa de la siguiente forma:
Inicio
Accion1
Accion2
.
.
AccionN
Fin
- Asignacin: La asignacin consiste, en el paso de valores o resultados a una
zona de la memoria. Dicha zona ser reconocida con el nombre de la variable que
recibe el valor. La asignacin se puede clasificar de la siguiente forma:
Simples: Consiste en pasar un valor constate a una variable (a=15)
Contador: Consiste en usarla como un verificador del numero de
veces que se realiza un proceso (a=a+1)
Acumulador: Consiste en usarla como un sumador en un proceso
(a=a+b)
De trabajo: Donde puede recibir el resultado de una operacin
matemtica que involucre muchas variables (a=c+b*2/4).
- Lectura: La lectura consiste en recibir desde un dispositivo de entrada (p.ej. el
teclado) un valor. Esta operacin se representa en un pseudocodigo como sigue:
Leer a, b
Donde a y b son las variables que recibirn los valores
Escritura: Consiste en mandar por un dispositivo de salida (p.ej. monitor o
impresora) un resultado o mensaje. Este proceso se representa en un
pseudocodigo como sigue:
Escribe El resultado es:, R
Donde El resultado es: es un mensaje que se desea aparezca y R es una
variable que contiene un valor.

5.2 Estructuras de Condicionales
Las estructuras condicionales comparan una variable contra otro(s) valor(es),
para que en base al resultado de esta comparacin, se siga un curso de accin
dentro del programa. Cabe mencionar que la comparacin se puede hacer contra
otra variable o contra una constante, segn se necesite. Existen dos tipos
bsicos, las simples y las mltiples.
Simples: Las estructuras condicionales simples se les conoce como
Tomas de decisin. Estas tomas de decisin tienen la siguiente
forma:
Si <condicin> entonces
Accin(es)
Fin-si
Dobles: Las estructuras condicionales dobles permiten elegir entre
dos opciones o alternativas posibles en funcin del cumplimiento o
no de una determinada condicin. Se representa de la siguiente
forma:
Si <condicin> entonces
Accin(es)
si no
Accin(es)
Fin-si
Donde:
Si Indica el comando de comparacin
Condicin Indica la condicin a evaluar
entonces.. Precede a las acciones a realizar cuando se cumple la
condicin
accin(es) Son las acciones a realizar cuando se cumple o no la
condicin
si no Precede a las acciones a realizar cuando no se cumple la
condicin
Dependiendo de si la comparacin es cierta o falsa, se pueden realizar una o mas
acciones.
Mltiples: Las estructuras de comparacin mltiples, son tomas de
decisin especializadas que permiten comparar una variable contra
distintos posibles resultados, ejecutando para cada caso una serie
de instrucciones especificas. La forma comn es la siguiente:
Si <condicin> entonces
Accin(es)
si no
Si <condicin> entonces
Accin(es)
si no
.
. Varias condiciones
Forma General
Casos Variable
Op1: Accin(es)
Op2: Accin(es)
.
.
OpN: accin
Fin-casos
5.3. Estructuras Cclicas
Se llaman problemas repetitivos o cclicos a aquellos en cuya solucin es
necesario utilizar un mismo conjunto de acciones que se puedan ejecutar una
cantidad especifica de veces. Esta cantidad puede ser fija (previamente
determinada por el programador) o puede ser variable (estar en funcin de algn
dato dentro del programa).Los ciclos se clasifican en:
Ciclos con un Numero Determinado de Iteraciones (Hacer-Para)
Son aquellos en que el numero de iteraciones se conoce antes de ejecutarse el
ciclo. La forma de esta estructura es la siguiente:
Hacer para V.C = L.I a L.S VC=LI
Accion1 Vc = LS V
Accion2 vc=vc+1
.
. F
.
AccionN Cuerpo del ciclo
Fin-para
Donde:
V.C Variable de control del ciclo
L.I Limite inferir
L.S Limite superior
En este ciclo la variable de control toma el valor inicial del ciclo y el ciclo se repite
hasta que la variable de control llegue al limite superior.
Ciclos con un Numero Indeterminado de Iteraciones ( Hacer-
Mientras, Repetir-Hasta)
Son aquellos en que el numero de iteraciones no se conoce con exactitud, ya que
esta dado en funcin de un dato dentro del programa.
Hacer-Mientras: Esta es una estructura que repetira un proceso
durante N veces, donde N puede ser fijo o variable. Para esto, la
instruccin se vale de una condicin que es la que debe cumplirse
para que se siga ejecutando. Cuando la condicin ya no se cumple,
entonces ya no se ejecuta el proceso. La forma de esta estructura
es la siguiente:
Hacer mientras <condicin>
Accion1 NO
Accion2
.
. SI
AccionN
Fin-mientras
Repetir-Hasta: Esta es una estructura similar en algunas
caractersticas, a la anterior. Repite un proceso una cantidad de
veces, pero a diferencia del Hacer-Mientras, el Repetir-Hasta lo
hace hasta que la condicin se cumple y no mientras, como en el
Hacer-Mientras. Por otra parte, esta estructura permite realizar el
proceso cuando menos una vez, ya que la condicin se evala al
final del proceso, mientras que en el Hacer-Mientras puede ser que
nunca llegue a entrar si la condicin no se cumple desde un
principio. La forma de esta estructura es la siguiente:
Repetir
Accion1
Accion2
.
.
AccionN
Hasta <condicin>
NO
http://www.rodolfoquispe.org/blog/que-es-un-algoritmo.php
http://www.eduteka.org/pdfdir/AlgoritmosProgramacion.pdf
http://www.monografias.com/trabajos15/algoritmos/algoritmos.shtml
http://html.rincondelvago.com/algoritmos.html
http://html.rincondelvago.com/estructuras-algoritmicas.html

Problemas Secuenciales
1) Suponga que un individuo desea invertir su capital en un banco y desea saber
cuanto dinero ganara despus de un mes si el banco paga a razn de 2%
mensual.
Inicio
Leer cap_inv
gan = cap_inv * 0.02
Imprimir gan
Fin
2) Un vendedor recibe un sueldo base mas un 10% extra por comisin de sus
ventas, el vendedor desea saber cuanto dinero obtendr por concepto de
comisiones por las tres ventas que realiza en el mes y el total que recibir en el
mes tomando en cuenta su sueldo base y comisiones.
Inicio
Leer sb, v1, v2, v3
tot_vta = v1 + v2 + v3
com = tot_vta * 0.10
tpag = sb + com
Imprimir tpag, com
Fin
Problemas Condicionales
a)Problemas Selectivos Simples
1) Un hombre desea saber cuanto dinero se genera por concepto de intereses
sobre la cantidad que tiene en inversin en el banco. El decidir reinvertir los
intereses siempre y cuando estos excedan a $7000, y en ese caso desea saber
cuanto dinero tendr finalmente en su cuenta.
Inicio
Leer p_int, cap
int = cap * p_int
si int > 7000 entonces
capf = cap + int
fin-si
Imprimir capf
fin
2) Determinar si un alumno aprueba a reprueba un curso, sabiendo que aprobara
si su promedio de tres calificaciones es mayor o igual a 70; reprueba en caso
contrario.
Inicio
Leer calif1, calif2, calif3
prom = (calif1 + calif2 + calif3)/3
Si prom >= 70 entonces
Imprimir alumno aprobado
si no
Imprimir alumno reprobado
Fin-si
Fin
Problemas ( Hacer para )
1) Calcular el promedio de un alumno que tiene 7 calificaciones en la materia de
Diseo Estructurado de Algoritmos
Inicio
Sum=0
Leer Nom
Hacer para c = 1 a 7
Leer calif
Sum = sum + calif
Fin-para
prom = sum /7
Imprimir prom
Fin.
2) Leer 10 nmeros y obtener su cubo y su cuarta.
Inicio
Hacer para n = 1 a 10
Leer num
cubo = num * num * num
cuarta = cubo * num
Imprimir cubo, cuarta
Fin-para
Fin.

Potrebbero piacerti anche