Muy bueno para aprender algoritmos bsicos e intermedios para ingenieria. Ayuda a entender como se crean o se hacen los algoritmos logicos que son muy utilizados para generar lineas de codigo en progrmación
1.
Computabilidad: Término matemático para nombrar a los
estudios sobre teoría de la computación. Consiste en encontrar
la representación adecuada para la descripción de un problema
o un fenómeno.
Conocimiento transmisible: se da si se cierra el ciclo
FUNDAMENTOS DE
ALGORITMOS
Descripción Representación
2.
Modelo: Especificación, generalmente en términos
de un lenguaje matemático, de los pasos necesarios
para reproducir, aquí y ahora, un subconjunto
determinado de la realidad descrito previamente
FUNDAMENTOS DE
ALGORITMOS
3.
FUNDAMENTOS DE
ALGORITMOS
1. Definición o análisis del
problema: Descripción
específica y comprensible
del problema a resolver
2. Diseño del algoritmo:
Planteamiento de los
pasos a seguir para
resolver el problema
3. Transformación del
algoritmo en un programa
independientemente del
lenguaje de programación.
4. Ejecución y validación del
programa
5. Mejoras y correcciones al
programa
4.
Algoritmo: Conjunto ordenado y finito de pasos u
operaciones que permite hallar la solución de un
problema. Es un método formal y sistemático de
representar la descripción de un proceso.
CARACTERÍSTICAS:
Definido: debe indicar el orden de la realización de cada paso y
no debe tener ambigüedad
Preciso: Si se sigue dos veces o más se obtendrá e el mismo
resultado cada vez
Finito: Debe terminar en algún momento. Tiene un número
determinado de pasos
FUNDAMENTOS DE
ALGORITMOS
5.
Correcto: Sin errores
Debe tener al menos una salida
Su solución debe ser concreta
Debe ser sencillo y legible
Eficiente y efectivo
Se ha de desarrollar en el menor tiempo posible
Un algoritmo debe describir tres partes:
Entrada(s) : elementos o condiciones iniciales
necesarios para resolver el problema.
Proceso : elaboración del procedimiento.
Salida(s): Resultados que se desean obtener
FUNDAMENTOS DE
ALGORITMOS
6.
Pseudocódigo: Representación descriptiva de las operaciones
de un algoritmo. Representa una secuencia lógica de
actividades, que llevarán en conjunto a la solución de un
problema. Los elementos que debe llevar un algoritmo son
Cabecera del algoritmo: Existen pasos o procedimientos
que se realizan para comenzar un programa. Siempre que
se haga debe ponerse un encabezado de programa, en
donde debe expresarse el identificador o nombre
correspondiente con la palabra reservada que señale el
lenguaje, generalmente ésta suele ser program que en
algoritmia significa algoritmo
Declaración de Variables: En este punto se describen todas
las variables que son usadas en el algoritmo, haciendo una
lista de sus nombres y especificando a qué tipo corresponde
cada uno.
FUNDAMENTOS DE
ALGORITMOS
7.
Declaración de Constantes: En este punto se
declararán todas las constantes de carácter estándar;
es decir, que tengan nombre y un valor ya conocido o
valores que ya no pueden variar en el transcurso del
algoritmo
Cuerpo del algoritmo: Una vez añadidas la cabecera
y la declaración de variables y constantes se procede a
realizar los pasos del algoritmo
A continuación se muestra un ejemplo:
FUNDAMENTOS DE
ALGORITMOS
8.
FUNDAMENTOS DE
ALGORITMOS
Algoritmo Área_Círculo
{Cálculo del área de un circulo
pidiendo el radio al usuario}
var r, A: real
cte: p:real
Inicio
Mostrar “Dame el radio”
Leer r
A <- p*r^2
Mostrar “El área es:”, A
Fin
Cabecera
Nombre del algoritmo
{Comentario con
descripción del
problema}
Declaración de variables y
constantes
Cuerpo del algoritmo
9.
Diagrama de flujo: Es la representación gráfica de las
operaciones de un algoritmo. Contiene símbolos gráficos
que se encuentran estandarizados. Los símbolos más
comúnes son:
FUNDAMENTOS DE
ALGORITMOS
12.
Inicio
var r, A: real
cte: p:real
“Dame el
radio:”
r
A <- p*r^2
A
A
“El área es ”, A,
“u^2”
Fin
13.
Instrucciones que se le dan a la Computadora
Un algoritmo se compone de muchos pasos, todos
diferentes, los que son interpretados como
instrucciones (lenguaje de bajo nivel), sentencias o
proposiciones (lenguaje de alto nivel). Entonces, en
un programa, la secuencia de instrucciones
especifica las operaciones que la computadora debe
realizar.
FUNDAMENTOS DE
ALGORITMOS
14.
Las instrucciones básicas y comunes pueden
dividirse en cuatro grupos:
Instrucciones de Entrada /Salida: Transferencia de datos e
información entre dispositivos periféricos (teclado,
impresora, unidad de disco, etc.) y memoria central.
Instrucciones Aritmético-Lógicas: Tienen la función de
ejecutar operaciones aritméticas (suma, resta,
multiplicación, división, potenciación), lógicas (operaciones
and, or, not, etc.).
Instrucciones Selectivas: Estas permiten la elección de una
tarea entre varias alternativas en función de los resultados
de diferentes expresiones condicionales.
Instrucciones Repetitivas: Permiten la repetición de
secuencias de instrucciones, un número determinado o
indeterminado de veces.
FUNDAMENTOS DE
ALGORITMOS
15.
CONSTANTES Y VARIABLES
Las constantes son datos cuyos valores no cambian, pero
existen datos cuyos valores sí varían durante la ejecución
del programa, a éstos los llamamos variables. En la
mayoría de los lenguajes de programación se permiten
diferentes tipos de constantes: enteras, reales, caracteres y
boolean o lógicas, quienes representan datos de estos
tipos.
Entonces una variable se conoce como un objeto, o
partida de datos cuyo valor puede cambiar durante la
ejecución del algoritmo o programa.
A las variables y a las constantes se les conoce o identifica
por los atributos siguientes: nombre o identificador que
lo asigna y tipo que describe el uso de la variable.
FUNDAMENTOS DE
ALGORITMOS
16.
Identificadores:
Deben empezar con letra, excepto ñ o Ñ, o guión bajo
y estar seguidos de cero o más letras, números o
guiones bajos
No se permiten símbolos como
$ ¡ ! ¿ ? ° | & - % # @ , . ‘ “ / o espacios en blanco y
tabuladores
Palabras reservadas: Existe un conjunto
palabras que se utilizan tanto en pseudocódigo
como en los lenguajes de programación no
pueden ser utilizadas como nombres de
identificadores ni de funciones.
FUNDAMENTOS DE
ALGORITMOS
17.
OPERACION DE ASIGNACION
Se le otorgan valores a una variable. Esta operación
de asignación se conoce como instrucción o
sentencia de asignación, si es que está en un
lenguaje de programación
La operación de asignación es representada por un
símbolo u operador:
La acción de asignar puede ser destructiva ya que
puede perderse el valor que tuviera la variable antes,
siendo reemplazado por el nuevo valor. Las acciones
de asignación se clasifican según sea el tipo de
expresiones en: Asignación aritméticas, Asignación
lógica y Asignación de caracteres
FUNDAMENTOS DE
ALGORITMOS
18.
EXPRESIONES
Son la combinación de constantes, variables, símbolos de
operación, paréntesis y nombres de funciones especiales,
idea que puede ser utilizada en notaciones de matemática
tradicional. Los valores de las variables nos permitirán
determinar el valor de las expresiones, debido a que éstos
están implicados en la ejecución de las operaciones
indicadas. Estas constan de operandos y operadores.
Según el tipo de objetos que manipulan, pueden
clasificarse en:
Aritméticas -> resultado tipo numérico.
relacionales -> resultado tipo lógico.
lógicas -> resultado tipo lógico.
caracter -> resultado tipo caracter.
FUNDAMENTOS DE
ALGORITMOS
19.
Expresiones Aritméticas
Estas expresiones son análogas a las fórmulas
matemáticas. Las variables y constantes son
numéricas (real o entera) y las operaciones son las
aritméticas
Operadores aritméticos
Precedencia
- (operador monario)
^ (exponenciación), (radicación)
*, / (división real),
+, -
div o / (cociente de división entera) , mod o %
(residuo de división entera)
FUNDAMENTOS DE
ALGORITMOS
20.
Expresiones lógicas: Su valor es siempre verdadero
o falso.
Se forman combinando constantes lógicas , variables
lógicas y otras expresiones lógicas, utilizando los
operadores lógicos y los operadores relacionales
Operadores relacionales
Precedencia
>, <
>=, <=
= o == (igualdad)
<> o != (desigualdad)
FUNDAMENTOS DE
ALGORITMOS
21.
Operadores lógicos
Precedencia
! o ~ o not (negado)
and o && (conjunción)
or o || (disyunción)
Nota: En C un valor falso se
toma como 0 y un valor
verdadero se toma como
cualquier valor diferente de
cero
FUNDAMENTOS DE
ALGORITMOS
A NOT
F V
V F
A B AND OR
F F F F
F V F V
V F F V
V V V V
22.
ENTRADA Y SALIDA DE INFORMACION
El ingreso de datos es importante para que la
computadora realice los cálculos; esta operación es
la entrada, luego, estos datos se convertirán en
resultados y serán la salida.
A la entrada se le conoce como operación de Lectura
(read). La operación de lectura se realiza a través de
los dispositivos de entrada que son (teclado,
unidades de disco, CD-Rom, etc.).
La operación de salida se realiza por medio de
dispositivos como (monitor, impresora, etc), a esta
operación se le conoce como escritura (write).
FUNDAMENTOS DE
ALGORITMOS