introducci+¦n a los algoritmos1

24
Introducción a los algoritmos: Fundamentos tema fundamental en el diseño de programas o soluciones. Por la cual, se debe tener buenas bases que le sirvan para poder crear de manera fácil y rápida sus programas. Un algoritmo es una descripción de los pasos básicos a seguir para cumplir determinada tarea”,….., “Para que una computadora realice una tarea es necesario definir previamente un algoritmo ¿QUÉ ES ALGORITMO? Un algoritmo es una serie de pasos organizados que describe el proceso que se debe seguir, para dar solución a un problema específico

Upload: joaquin1418

Post on 27-Jun-2015

640 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Introducci+¦n a los algoritmos1

Introducción a los algoritmos: Fundamentos

tema fundamental en el diseño de programas o soluciones. Por la cual, se debe tener buenas bases que le sirvan para poder crear de manera fácil y rápida sus programas.

Un algoritmo es una descripción de los pasos básicos a seguir para cumplir determinada tarea”,….., “Para que una computadora realice una tarea es necesario definirpreviamente un algoritmo

¿QUÉ ES ALGORITMO?Un algoritmo es una serie de pasos organizados que describe el proceso que se debe seguir, para dar solución a un problema específico

Page 2: Introducci+¦n a los algoritmos1

PARTES DE UN ALGORITMO: Todo algoritmo debe obedecer a la estructura básica de un sistema, es decir:

Donde:ENTRADACorresponde al insumo, a los datos necesarios que requiere elproceso para ofrecer los resultados esperados.PROCESOPasos necesarios para obtener la solución del problema o lasituación planteada.SALIDAResultados arrojados por el proceso como solución.

Page 3: Introducci+¦n a los algoritmos1

ENTRADA Valores de de las variables A y B.PROCESOAsignar a la variable Suma, el valor de A mas el valor de B.SALIDAImpresión del valor de la variable Suma, que contiene la sumatoria de los valores de A y B.

Page 4: Introducci+¦n a los algoritmos1

CARACTERÍSTICAS DE LOS ALGORITMOSLas características fundamentales que debe cumplir un algoritmo son:PRECISIÓNIndica el orden de realización de cada paso dentro del proceso.DEFINICIONIndica la exactitud y consistencia de los pasos descritos en el proceso, si el algoritmo se prueba dos veces, en estas dos pruebas, se debe obtener el mismo resultado.FINITUDIndica el número razonable de pasos, los cuales deben conllevar a la finalización del proceso y producir un resultado en un tiempo finito

Page 5: Introducci+¦n a los algoritmos1

Al diseñar un algoritmo se debe tener presente las características de precisión, definición y finitud.Visualicemos estas características a través del siguiente ejemplo:

Algoritmo para hacer una tortaEntrada: Harina de trigo, mantequilla, huevos, sal, azúcarProceso: 1.- Unir la mantequilla con el azúcar2.- Batir hasta lograr consistencia cremosa3.- Agregar harina de trigo, huevos, sal y azúcar4.- Batir hasta que esponje5.- Precalentar el horno, en 250 °, y en mantequillar tortera6.- Una vez logre la consistencia de esponjado, colocar en la tortera7.- Introducir en el horno por espacio de 45 minutosSalida: Torta

Page 6: Introducci+¦n a los algoritmos1

Ejercicio: Realice un algoritmo para la elaboración de panSiguiendo el ejemplo recuerde determinar las instrucciones de Entrada, Proceso y Salida

Page 7: Introducci+¦n a los algoritmos1

Instrucción o sentenciaUna instrucción esta compuesta por uno o más comandos (acción), datos, símbolos, variables o constantes y expresiones, que en conjunto representan una instrucción o sentencia.

Ejemplo de instrucción: En la construcción de los programas se utiliza una instrucción por línea. Así mismo, se utiliza la alineación de aquellas instrucciones dentro de las estructuras que las contienen de manera ordenada que permita visualizar el inicio y fin de cada bloque de instrucciones.

Page 8: Introducci+¦n a los algoritmos1

Si ASISTIO =”SI” EntoncesLeer Sueldo,Asignar Sueldo = Sueldo + HoraExtraFin Si

Donde:

SI Representa una estructura condicional utilizada para establecer preguntas o programar ciertas condiciones

ASISTIO Nombre de una Variable lógica que puede obtener sólo dos valores “SI” o “NO”. En el ejemplo se programa la condición de la variables cuando es “SI”

Page 9: Introducci+¦n a los algoritmos1

ENTONCES Parte de la instrucción o estructura condicional

LEER SUELDO Instrucción utilizando el comando cuya acción es la lectura de un campo o dato

Asignar SUELDO= SUELDO+HORAEXTRA Instrucción de asignación, permite asignar o calcular el valor que adquirirá una variable

Fin SI Cierra la estructura condicional Si –Entonces –Fin Si

Page 10: Introducci+¦n a los algoritmos1

Comandos o palabras reservadasLos comandos no son más que acciones que debe interpretar y ejecutar el computador. Cada comando conserva una sintaxis determinada, es decir la forma deutilizarlo. Los lenguajes computacionales tienen en su repertorio comandos dirigidos al procesamiento de archivos y datos, entre ellos: Leer, Calcular, Asignar, Clasificar, Imprimir.

Page 11: Introducci+¦n a los algoritmos1

DatosLos datos son símbolos que se convierten en condiciones, hechos, situaciones o valores. Un dato puede significar un número, una letra, un signo ortográfico o cualquier símbolo que represente una cantidad, una medida, una palabra o una descripción. La importancia de los datos está en su capacidad de asociarse dentro de un contexto paraconvertirse en información.

Page 12: Introducci+¦n a los algoritmos1

TIPOS DE DATOSComo se describió anteriormente, un dato es un campo que puede convertirse en información. Existen datos simples (sin estructura) y compuestos (estructurados).

Los datos simples son los siguientes

- Numéricos (Reales, Enteros)- Lógicos- Carácter (Char, String)

Page 13: Introducci+¦n a los algoritmos1

Ejemplo. Ejemplos de tipos de datos simples

Tipo de datos Características Ejemplos

Numéricos Enteros Los números enteros son los números naturales positivos y negativos que conocemos.

12

25146-456

Numéricos Reales Los números reales, son los números que tienen parte decimal.

0.561.00

25.13148.45-456.23

Lógicos o boléanos Son aquellos datos cuyos únicos valores sólo pueden ser: Verdadero (V) o Falso (F), puede encontrarse,Verdadero (True) o Falso (False). Se utiliza para representar las opciones (si/no) a determinadas condiciones.

Nacionalidad = “Venezolano”(S/N)?

Page 14: Introducci+¦n a los algoritmos1

Ejemplo. Ejemplos de tipos de datos simples

Tipo de datos Características Ejemplos

Carácter o Char Su valor lo comprenden todos los caracteres alfabéticos,mayúsculas y minúsculas (A – Z), numéricos (0 – 9) y símbolos especiales (#,@,%,&).

Carácter String ocadena

Su valor esta representado por un conjunto de caracteres.

“Abril” “Reporte Anual de FallasTécnicas”“1º de mayo, Día del Trabajador”

Page 15: Introducci+¦n a los algoritmos1

Ejercicio. Identifique en la tabla a continuación los tipos de datos simples (numéricos, lógicos y carácter)

Dato Repuesta Dato Repuesta

V 3,147114

2005 0,50

-4.25 10.000.000,00

% 3

MIL5008 “Barranquilla”

“Estado Texas” F

DXLVII 1038

“BARRANQUILLA” CAR/$$22

A @

TUMACO1826 -39,78

Page 16: Introducci+¦n a los algoritmos1

VARIABLES Y CONSTANTESSon espacios de memoria creados para contener valores que de acuerdo a su naturaleza deseen mantenerse (Constantes) o que puedan variar (Variables).

ConstanteEs un dato que permanece con un valor, sin cambios, es decir constante, a lo largo del desarrollo del algoritmo o a lo largo de la ejecución del programa.

Se utiliza cuando necesitamos que el valor de determinada variable se mantenga durante la ejecución del programa o hasta tanto se requiera su cambio.

Page 17: Introducci+¦n a los algoritmos1

VariableEs un dato cuyo valor puede variar a lo largo del desarrollo del algoritmo o en el transcurso de la ejecución del programa.

Una variable descrita o declarada de un tipo determinado, sólo podrá contener, valores de ese tipo.

Una variable declarada numérica entera, no podrá contener números reales.

Se utiliza cuando el dato que contiene sufrirá cambios o variará en la medida que cambien los valores que maneje.

Page 18: Introducci+¦n a los algoritmos1

Los algoritmos se Representa en forma descriptiva las operaciones que debe realizar un algoritmo (pseudocodigo) por ejemplo. Escribe un algoritmo para distinguir si es mayor o menor de edadINICIO Edad: Entero ESCRIBA “cual es tu edad?” Lea Edad SI Edad >=18 entonces ESCRIBA “Eres mayor de Edad” FINSI ESCRIBA “fin del algoritmo” FIN

Page 19: Introducci+¦n a los algoritmos1

Sumar dos números

InicioDeclarar variable Suma=0Leer Primer NúmeroAsignarlo a la variable ALeer Segundo NúmeroAsignarlo a la variable BAsignar el valor de A + B a la variable SumaSuma= A + BImprimir valor de Suma

Page 20: Introducci+¦n a los algoritmos1

Las estructuras condicionales comparan una variable contra otro(s)valor (es), para que en base al resultado de esta comparación, se siga un curso de acción dentro del programa. Cabe mencionar que la comparación se puede hacer contra otra variable o contra una constante, según se necesite. Existen tres tipos básicos, las simples, las dobles y las múltiples.

Simples:

Las estructuras condicionales simples se les conoce como “Tomas de decisión”. Estas tomas de decisión tienen la siguiente forma:

Pseudocódigo: Diagrama de flujo:

Page 21: Introducci+¦n a los algoritmos1

• Las estructuras condicionales simples se les conoce como “Tomas de decisión”. Estas tomas de decisión tienen la siguiente forma:

• Dobles: Las estructuras condicionales dobles permiten elegir entre dos opciones o alternativas posibles en función del cumplimiento o no de una determinada condición.

Page 22: Introducci+¦n a los algoritmos1

• Donde: Si:Indica el comando de comparación Condición : Indica la condición a evaluar Entonces : Precede a las acciones a realizar cuando se cumple la condición Instrucción(es):Son las acciones a realizar cuando se cumple o no la condición si no :Precede a las acciones a realizar cuando no se cumple la condición Dependiendo de si la comparación es cierta o falsa, se pueden realizar una o más acciones.

Page 23: Introducci+¦n a los algoritmos1

• Múltiples: Las estructuras de comparación múltiples, son tomas de decisión especializadas que permiten comparar una variable contra distintos posibles resultados, ejecutando para cada caso una serie de instrucciones especificas. La forma común es la siguiente:

Page 24: Introducci+¦n a los algoritmos1

• Definición de While

(Mientras). Una de las estructuras de repetición empleada en la programacion de algoritmos. While permite al programador especificar las veces que se repita una acción (una o más sentencias de programacion) mientras una condición se mantenga verdadera.

• Mientras condicion hacer• instruciones• Fin mientras

Mientras la condición se mantenga verdadera, el bloque de instrucciones dentro de las llaves se ejecutará "x" cantidad de veces. Es necesario que alguna vez la condición se haga falsa, pues de lo contrario se entraría en un ciclo infinito de repeticiones (bucle infinito) y el programa se consideraría bloqueado. Por lo tanto es necesario que en el bloque de instrucciones dentro de la estructura while, se ejecute alguna acción que en algún momento haga que la condición