Está en la página 1de 32

ALGORITMOS

0 Un algoritmo es un conjunto de pasos, procedimientos

o acciones que nos permiten alcanzar un resultado o


resolver un problema.
0 Etapas para solucionar un algoritmo

ALGORITMOS
Caractersticas de los algoritmos:
0 Precisin: los pasos a seguir se deben precisar

claramente
0 Determinismo: el algoritmo, dado un conjunto de
datos de entrada idntico, siembre debe arrojar los
mismos resultados
0 Finitud: El algoritmo se debe definir con un numero
finito de instrucciones y se debe poder ejecutar en un
tiempo finito.

REPRESENTACIN DE UN
ALGORITMO
0 DIAGRAMAS DE FLUJO

Representa la esquematizacin grfica de un algoritmo.


Muestra grficamente los pasos o procesos a seguir.

0 PSEUDOCODIGO

Es un lenguaje de especificacin (descripcin) de


algoritmos. Representa un algoritmo

ALGORITMOS
Ejemplo: un cliente realiza un pedido a una fbrica, la
fbrica examina en su banco de datos la ficha del
cliente, si el cliente es solvente entonces la empresa
acepta el pedido; en caso contrario, rechazar el pedido.
1. Inicio.
2. Leer el pedido.
3. Examinar la ficha del cliente
4. Si el cliente es solvente, aceptar pedido;

En caso contrario, rechazar pedido.


5. Fin

Algoritmo?
1. Haga una lista de todos los enteros positivos
2. Disponga esta lista en orden descendente ( de mayor
a menor)
3. Extraiga el primer entero de la lista resultante
4. Pare

Calcular la paga neta de un trabajador


conociendo el nmero de horas trabajadas, la
tarifa horaria y la tasa de impuestos
Algoritmo
DATOS DE
1. Leer Horas, Tarifa, Tasa
ENTRADA
2. Calcular PagaBruta = Horas * Tarifa
3. Calcular Impuestos = PagaBruta * Tasa
PROCESAMIENTO
4. Calcular PagaNeta = PagaBruta
DE DATOS
Impuestos
IMPRESIN
5. Visualizar PagaBruta, Impuestos,
DE
PagaNeta
RESULTADOS

Calcular el valor de la suma


1,1+2,1+2+3,,+100
0 Algoritmo

1. Establecer Contador a 1
2. Establecer Suma a 0
3. Mientras Contador <= 100 hacer
Sumar Contador a Suma
Incrementar Contador en 1
fin_mientras
4. Visualizar Suma

Sumar dos nmeros


PSEUDOCODIGO
Inicio
Variables: num1,num2,resultado : nmero entero
Escribir: Calcular la suma de 2 nmeros
Escribir: Ingresa el primer valor
Leer num1
Escribir: Ingresa el segundo valor
Leer num2
Resultado = num1 + num2
Escribir: La suma de los nmeros es, resultado
Fin

DIAGRAMAS DE FLUJO
INICIO

FIN

Ejercicio
Calcular el rea de un triangulo

OPERADORES LOGICOS Y DE
CONTROL
La edad de Luis es mayor a la de Laura?
0 Laura = 10
0 Luis = 20
SI (VERDADERO)
20 > 10
Es igual la palabra CASA a la palabra CAZA
CASA == CAZA
NO (FALSO)
EJEMPLO: COMPARAR DOS NUMEROS

PROGRAMA
0 Un programa de computadora es un

conjunto de instrucciones que


producirn la ejecucin de una
determinada tarea.
0 Un programa es un medio para
conseguir un fin.

0 El proceso de programacin es, un

proceso de solucin de problemas y su


desarrollo requiere las siguientes fases:

Proceso de Programacin
1. Definicin y anlisis del problema

2. Diseo de algoritmos:
Diagrama de Flujo

Pseudocodigo

3. Codificacin del programa


4. Depuracin y verificacin del

programa
5. Documentacin
6. Mantenimiento

INSTRUCCIONES Y TIPOS DE
INSTRUCCIONES
0 El proceso de diseo del algoritmo consiste en
definir las instrucciones que resolvern el
problema.
0 Las instrucciones se deben escribir y
posteriormente almacenar en memoria en el
mismo orden en que han de ejecutarse (EN
SECUENCIA)

0 Un programa puede ser lineal o no lineal

Programa lineal
0 Si las instrucciones se ejecutan
secuencialmente, sin bifurcaciones, decisin ni

comparaciones
Instruccin 1
Instruccin 2
.
.
.
Instruccin n

Programa no lineal
0 Cuando se interrumpe la secuencia

mediante instrucciones de bifurcacin


accin 1
accin 2
.
.
.
accin x
accin n
Accion n + i

TIPOS DE INSTRUCCIONES
1. Instrucciones de inicio/fin
2. Instrucciones de asignacin
3. Instrucciones de lectura

4. Instrucciones de escritura
5. Instrucciones de bifurcacin

Instruccin de asignacin
A

40 la variable A toma el valor de 40

Cual ser el valor que tomar la variable c tras la


ejecucin de las siguientes instrucciones?
A
12
B
A
C
B

Instruccin de asignacin
0 Ejercicio:

Cual es el valor de la variable AUX al ejecutarse la


instruccin 5?
1. A
10
2. B
20
3. AUX
A
4. A
B
5. B
AUX

0 Instruccin de lectura de datos

leer (NUMERO, HORAS, TASA)


0 Instruccin de escritura de resultados
0 Escribir (A, B, C)
0 Instruccin de bifurcacin
0 Bifurcacin hacia adelante

0 Bifurcacin hacia atrs


accin 1
accin 2
.
.
accin n

accin 1
accin 2
.
.
accin n

DATOS Y TIPOS DE DATOS


DATOS NUMERICOS
a) Tipo numrico entero
b) Tipo numrico real

DATOS LOGICOS
Booleano, aquel que puede tomar uno de dos valores
Cierto o verdadero

Falso

DATOS Y TIPOS DE DATOS


DATOS TIPO CARCTER
Alfabticos: A, B, C, , x, y, z
Numricos: 1, 2, 3,
Especiales: +, - , *, /, ^, <, > ,
TIPO CADENA
Hola
13 de Abril del 2016

EXPRESIONES
Operadores aritmticos
+
Suma
Resta
*
Multiplicacin
/
Divisin
^
Potencia o Exponenciacin
Mod mdulo (resto)

DIV y MOD
DIV
/
div

Se usa para divisin real


Se usa para divisin entera

MOD
Representa el resto de la divisin entera

20
2

3
6

20 div 3 = 6
20 mod 3 = 2

Reglas de Prioridad
Operaciones encerradas en ( ) se evalan primero.
Si existen parntesis anidados (interiores unos a otros),
las expresiones mas internas se evalan primero

Orden de prioridad para operaciones aritmticas


()
* , / , %
+ , -

Operadores de relacin
Operador
<
>
= , ==
<=
>=
< >, !=

Significado
menor que
mayor que
igual que
menor o igual que
mayor o igual que
distinto de

Se aplican a datos enteros, reales, lgicos, carcter.


El resultado de la operacin ser verdadero o falso

Operadores lgicos
operador lgico
no
y
o

expresion lgica
significado
no p
negacion de p
pyq
conjuncion de p y q
poq
disyuncin de p y q

OPERADORES LOGICOS Y
TABLAS DE VERDAD
a
VERDADERO
FALSO

no a
FALSO
VERDADERO

a
VERDADERO
VERDADERO
FALSO
FALSO

b
VERDADERO
FALSO
VERDADERO
FALSO

ay b
VERDADERO
FALSO
FALSO
FALSO

OPERADORES LOGICOS Y
TABLAS DE VERDAD
a
VERDADERO
VERDADERO
FALSO
FALSO

b
VERDADERO
FALSO
VERDADERO
FALSO

ao b
VERDADERO
VERDADERO
VERDADERO
FALSO

ENTRADA Y SALIDA DE
INFORMACION
0 Entradas: permiten leer valores y

asignarlos a variables. La operacin de


entrada se denomina lectura
0 Salidas: pueden aparecer en un
dispositivo de salida. La operacin de
salida se denomina escritura

Desarrolle un algoritmo que


permita leer dos valores
distintos, determinar cual de
los dos valores es el mayor y
escribirlo.