NCR:4225
SANGOLQU
OCTUBRE 2016 - FEBREO 2017
VARIABLE
ESTRUCTURA DE UN ALGORITMO
La estructura de un algoritmo sirve para organizar a los elementos que aparecen en l.
Todos los algoritmos tienen la misma estructura, la cual viene definida por tres
secciones:
Cabecera
Declaraciones
Cuerpo
Cabecera
En la cabecera de un algoritmo se debe de indicar el nombre (identificador) asignado al
mismo.
Ejemplo
Si se quiere disear el algoritmo de un programa que calcule el rea de una
circunferencia por lo tanto el algoritmo debe llevar en la cabecera algoritmo
Area_de_una_circuferencia
Declaraciones
En esta seccin se declaran las constantes, los tipos de datos y las variables que se usan
en un algoritmo para el proceso de programacin.
Cuerpo
En el cuerpo se escriben todas las instrucciones del algoritmo para hacer correr el
programa.
HERRAMIENTAS DE ALGORITMOS
Para representar un algoritmo se debe utilizar algn mtodo que permita independizar
dicho algoritmo del lenguaje de programacin elegido. Ello permitir que un algoritmo
pueda ser codificado indistintamente en cualquier lenguaje.
Para conseguir este objetivo se precisa que el algoritmo sea representado grfica o
numricamente, de modo que las sucesivas acciones no dependan de la sintaxis de
ningn lenguaje de programacin, sino que la descripcin pueda servir fcilmente para
su transformacin en un programa, es decir, su codificacin.
Los mtodos usuales para representar un algoritmo son:
o Diagramas de FLUJO
o PseudoCdigo
o Diagrama N-S
Un diagrama de flujo es una de las tcnicas de representacin de algoritmo ms antigua
y a la vez ms utilizada, aunque se empleo ha disminuido considerablemente, sobre todo
desde la aparicin de lenguajes de programacin estructurados.
Un diagrama de flujo es un diagrama que utiliza los smbolos (cajas) estndar mostrados
en la figura 1 y que tiene los pasos del algoritmo escritos en esas cajas unidas por
flechas, denominadas lneas de flujo, que indican la secuencia en que se deben ejecutar.
2. Las lneas utilizadas para indicar la direccin de un flujo deben de ser rectas,
horizontales o verticales, no inclinadas y tampoco deben de cruzarse.
3. Todas las lneas utilizadas para la direccin del flujo del diagrama deben de estar
conectadas, esto es, no debe de haber lneas sueltas.
Ejemplo
Es decir, el orden de ejecucin del programa que viene de arriba hacia abajo, al llegar
a condicin, la evala y si la condicin resulta verdadera pasa a ejecutar comandos,
mientras que si resulta falsa se salta ese conjunto de comandos y sigue ejecutando los
dems hacia abajo.
Un ejemplo muy simple es el siguiente:
Es decir, el orden de ejecucin del programa que viene de arriba hacia abajo, al llegar
a condicin, la evala y si la condicin resulta verdadera pasa a ejecutar comandos (1),
mientras que si resulta falsa ejecuta el bloque de comandos (2), a continuacin, contina
el programa en orden descendente.
Un ejemplo muy simple es el siguiente:
* Si x > y queremos imprimir en pantalla el valor de x e imprimir una frase que lo
indique, pero en caso de no ser x > y (entonces y ser mayor o igual a x) queremos sacar
en pantalla el valor de y e indicarlo con un mensaje. Esto lo podramos hacer con una
bifurcacin simple as:
Entre el "if" que abre la bifurcacin y el "end" que la cierra, tenemos la condicin (que
viene tras el "if"), el bloque de sentencias a ejecutarse si se cumple la condicin, a
continuacin, el "else", y tras l viene el bloque de sentencias a ejecutarse en caso de no
cumplirse la condicin.
o Bifurcacin mltiple: Un tercer caso es el de ejecutar unos comandos en caso de
que se cumpla una condicin (1) o ejecutar otros en caso de cumplir una condicin2
... etc. finalmente ejecutar otros en caso de fallar las dos (o ms) condiciones
anteriores. Lo cual viene expresado mediante el "diagrama de flujo" as:
En este caso se pueden poner no slo dos condiciones, sino ms de dos (aunque con
ms de tres el cdigo de programa se oscurece demasiado). Fijarse cmo el bloque
de comandos (3) se ejecuta cuando fallan todas las condiciones, que por cierto podran
ser ms de dos.
Un ejemplo muy simple es el siguiente:
* Si x > y queremos imprimir en pantalla el valor de x e imprimir una frase que lo
indique; en caso de ser y > x queremos sacar en pantalla el valor de y e indicarlo con un
mensaje; finalmente si no se dan ninguna de las dos condiciones entonces sacaremos en
pantalla que "x es igual a y". Esto lo podramos hacer con una bifurcacin simple as:
PSEUDOCDIGO
El pseudocdigo es utilizado por programadores para describir algoritmos en un
lenguaje humano simplificado que no es dependiente de ningn lenguaje de
programacin. Por este motivo puede ser implementado en cualquiera lenguaje por
cualquier programador que utilice el pseudocdigo.
Instrucciones primitivas.
Instrucciones de proceso.
Instrucciones de control.
Instrucciones compuestas.
Instrucciones de descripcin.
Cabecera.
Programa
Modulo
Tipos de datos.
Constantes.
Variables.
Cuerpo.
Inicio.
Instrucciones.
Fin.
TIPOS DE DATOS
El propsito general de toda computadora es manejar datos. Un dato es una coleccin de
resultados compuesta por caracteres, nmeros y smbolos almacenados en el procesador
de manera que puedan ser procesados.
Los tipos de datos simples son:
Dato numrico
Es el conjunto de los valores numricos.
Se pueden representar de dos formas:
Enteros (nmeros completos que no tienen componentes fraccionarios)
Ejemplos: 16
3868 -1256 0
Dato Carcter
Conjunto finito y ordenado de caracteres que la computadora reconoce
Los caracteres reconocidos por los diferentes computadores por lo general no son
estndar, pero la mayora reconoce los tipos los siguientes tipos de caracteres:
Caracteres Alfabticos: {A, B, C, , Z} {a, b, c, , z}
Caracteres Numricos: {0, 1, 2, , 9}
Caracteres Especiales: {+, -, *, /, ^, <, >, $, }
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.
Tipos de operadores:
o Aritmticos
o Relacionales
o 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.
Operadores Aritmticos:
o
o
o
o
o
+ 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
23 * 2 / 5 = 9.2
3 + 5 * (10 - (2 + 4)) = 23
Operadores Relacionales
Se utilizan para establecer una relacin entre dos valores. Luego compara estos valores
entre si y esta comparacin produce un resultado de certeza o falsedad (verdadero o
falso).
Los operadores relacionales comparan valores del mismo tipo (numricos o cadenas).
Estos tienen el mismo nivel de prioridad en su evaluacin.
Los operadores relacinales tiene menor prioridad que los aritmticos.
Tipos de operadores Relacionales:
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
Ejemplos no lgicos:
a<b<c
10 < 20 < 30
T > 5 < 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.
Tipos de operadores Lgicos:
And Y
Or O
Not Negacin
Ejemplo:
Para los siguientes ejemplos T significa verdadero y F falso.
Resultado
Operador
Operando2
Resultado
AND
Operador Or Operador Or
Operando1
Operador
Operando2
Resultado
Or
Not
And
Or
()
^
*, /, Mod, Not
+, -, And
>, <, > =, < =, < >, =, Or