Vous êtes sur la page 1sur 14

Repblica Bolivariana de Venezuela Ministerio del Poder Popular para la Educacin U.E.

Colegio Nuestra Seora del Valle Cuman, Estado Sucre

Informtica: Algoritmo

Profesor: Johana Prez

Realizado por: Athamaica Velsquez n 24 Jefferson Mrquez 7mo B n 33

Cuman, Junio del 2013

INTRODUCCIN

El programador de computadoras es antes que nada una persona que resuelve problemas, por lo que para llegar a ser un programador eficaz se necesita aprender a resolver problemas de un modo riguroso y sistemtico. A la metodologa necesaria para resolver problemas mediante programas se denomina Metodologa de la Programacin. El eje central de esta metodologa es conocido con el nombre de Algoritmo.

Un algoritmo es un mtodo para resolver un problema. Aunque la popularizacin del trmino ha llegado con el advenimiento de la era informtica, algoritmo proviene de Mohammed al-Khowarizmi, matemtico persa que vivi durante el siglo IX y alcanzo gran reputacin por el enunciado de las reglas para sumar, restar, multiplicar y dividir nmeros decimales; la traduccin al latn del apellido de la palabra algorismus derivo posteriormente en algoritmo. Euclides, el gran matemtico griego (del siglo IV antes de Cristo) que invento un mtodo para encontrar el mximo comn divisor de dos nmeros, se considera con AlKhowarizmi el otro gran padre de la algoritmia (ciencia que trata de los algoritmos).

En el siguiente trabajo se basa en presentar una serie de conceptos y definiciones propios del estudio de los Algoritmos, su anlisis y diseo. En el mismo se muestran los conceptos de algoritmo y algunos de sus componentes, anlisis y diseo.

ALGORITMO Es un conjunto pre-escrito de instrucciones o reglas bien definidas, ordenadas y finitas que permite realizar una actividad mediante pasos sucesivos que no generen dudas a quien deba realizar dicha actividad. Dados un estado inicial y una entrada, siguiendo los pasos sucesivos se llega a un estado final y se obtiene una solucin. Los algoritmos son el objeto de estudio de la algoritmia. El lenguaje algortmico es aquel por medio al cual se realiza un anlisis previo del problema a resolver y encontrar un mtodo que permita resolverlo. El conjunto de todas las operaciones a realizar y el orden en que se deben efectuarse, se le denomina algoritmo.

Por tanto un algoritmo: 1.- Es una secuencia de pasos o procesos lgicamente relacionados entre s a fin de obtener la solucin a un problema planteado. 2.- Es una lista de instrucciones para efectuar paso a paso un proceso. 3.- Conjunto "FINITO" de pasos o instrucciones, seguidas en un orden lgico, los cuales nos llevan a la solucin de un problema especfico. 4.- Una serie de instrucciones colocadas en cierta secuencia, necesarias para la descripcin de las operaciones que llevan a la solucin de un problema. 5.- Es un procedimiento completo para resolver un problema especfico en un nmero "FINITO" de pasos. 6.- Es un mtodo para resolver un problema mediante una serie de datos precisos, definidos y finitos.

Partes y Elementos para la Construccin de un Algoritmo Todo algoritmo debe obedecer a la estructura bsica de un sistema, es decir: Entrada, Proceso y Salida. Donde: Entrada: Corresponde al insumo, a los datos necesarios que requiere el proceso para ofrecer los resultados esperados.

Proceso: Pasos necesarios para obtener la solucin del problema o la situacin planteada. Salida: Resultados arrojados por el proceso como solucin. Algunos ejemplos en matemtica son el algoritmo de la divisin para calcular el cociente de dos nmeros, el algoritmo de Euclides para obtener el mximo comn divisor de dos enteros positivos, o el mtodo de Gauss para resolver un sistema lineal de ecuaciones.

Ejemplo 1: Algoritmo de la sumatoria de dos nmeros, de este modo se tiene que: Entrada: Valores de de las variables A y B. Proceso: Asignar a la variable Suma, el valor de A mas el valor de B. Salida: Impresin del valor de la variable Suma, que contiene la sumatoria de los valores de A y B.

Estructuras secuenciales La estructura secuencial es aquella en la que una accin sigue a otra en secuencia. Las operaciones se suceden de tal modo que la salida de una es la entrada de la siguiente y as sucesivamente hasta el fin del proceso. La asignacin de esto 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: 1. Simples: Consiste en pasar un valor constante a una variable (a 15) 2. Contador: Consiste en usarla como un verificador del nmero de veces que se realiza un proceso (a a + 1) 3. Acumulador: Consiste en usarla como un sumador en un proceso (a a + b) 4. De trabajo: Donde puede recibir el resultado de una operacin matemtica que involucre muchas variables (a c + b*2/4).

Un ejemplo de estructura secuencial, como obtener el rea de un tringulo: Inicio ... float b, h, a; printf("Diga la base"); scanf("%f", &b); printf("Diga la altura"); scanf("%f", &h); a = (b*h)/2; printf("El rea del tringulo es %f", a) ... Fin Caractersticas de los Algoritmos. Las caractersticas fundamentales que debe cumplir un algoritmo son: Precisin: Indica el orden de realizacin de cada paso dentro del proceso. Definicin: Indica 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. Finitud: Indica el nmero razonable de pasos, los cuales deben conllevar a la finalizacin del proceso y producir un resultado en un tiempo finito. Al disear un algoritmo se debe tener presente las caractersticas de precisin, definicin y finitud.

En la vida cotidiana, se emplean algoritmos frecuentemente para resolver problemas. Algunos ejemplos son los manuales de usuario, que muestran algoritmos para usar un aparato, las instrucciones que recibe un trabajador por parte de su patrn o las instrucciones que lee una ama de casa para elaborar una torta. Estas caractersticas se pueden visualizar a travs del siguiente ejemplo.

Ejemplo 2: Algoritmo para hacer una torta Entrada: Harina de trigo, mantequilla, huevos, sal, azcar

Proceso: 1.- Unir la mantequilla con el azcar 2.- Batir hasta lograr consistencia cremosa 3.- Agregar harina de trigo, huevos, sal y azcar 4.- Batir hasta que esponje 5.- Precalentar el horno, en 250 , y enmantequillar tortera 6.- Una vez logre la consistencia de esponjado, colocar en la tortera 7.- Introducir en el horno por espacio de 45 minutos Salida: Torta

Segn el ejercicio anterior, se puede determinar que el algoritmo para hacer torta, cumple con las caractersticas fundamentales de los algoritmos. Es decir, Es preciso?, Es definido?, Es finito?, razona tus respuestas.

Elementos para la Construccin de un Algoritmo Se ha definido algoritmo como un conjunto de pasos conducentes a resolver un problema, cada uno de esos pasos, corresponde a lo que se denomina en el programa, una instruccin, aunque pudiera darse que, en una instruccin se junten dos o ms pasos. Aprender a realizar un algoritmo se fundamenta en lo que se persigue lograr con su desarrollo; debido a que no existe un mtodo nico para resolver problemas se estudian diferentes mtodos de resolucin o modelos de construccin para lograr la generacin del resultado deseado. Esto conlleva a reestructurar el concepto de algoritmo, como un conjunto de instrucciones o pasos en los que se describe su inicio, desarrollo o proceso y salida o resultado del algoritmo; elaborados para lograr resolver un problema. Dado que un algoritmo es un conjunto de instrucciones elaboradas con la finalidad de resolver un problema, a continuacin se describen los elementos que se utilizan en la construccin de una instruccin.

Instruccin o Sentencia: Dependiendo del origen del material instruccional se habla de instruccin o sentencia; sta, define una accin o un mandato que se debe realizar, esa accin o mandato se representa a travs de un comando o lo que es lo mismo palabras reservadas de un lenguaje de programacin en particular. Una instruccin est compuesta por uno o ms comandos (accin), datos, smbolos, variables o constantes y expresiones, que en conjunto representan una instruccin o sentencia.

Ejemplo de instruccin: En la construccin de los programas se estila utilizar una instruccin por lnea. As mismo, se utiliza la identacin, que no es ms que la alineacin 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. Si ASISTIO = SI Entonces Leer Sueldo, Asignar Sueldo = Sueldo + Hora-Extra Fin Si Donde: SI, Representa una estructura condicional utilizada para establecer preguntas o programar ciertas condiciones ASISTIO: Nombre de una Variable lgica que puede obtener slo dos valores SI o NO. En el ejemplo se programa la condicin de la variables cuando es SI ENTONCES: Parte de la instruccin o estructura condicional LEER SUELDO: Instruccin utilizando el comando cuya accin es la lectura de un campo o dato Asignar SUELDO = SUELDO+HORA-EXTRA Instruccin de asignacin, permite asignar o calcular el valor que adquirir una variable Fin SI: Cierra la estructura condicional Si Entonces Fin Si

Comandos o palabras reservadas: Todos los lenguajes, naturales o computacionales, tienen palabras que denotan una accin. Los comandos no son ms que acciones que debe interpretar y ejecutar el computador. Cada comando conserva una sintaxis determinada, es decir la forma de utilizarlo. Los lenguajes computacionales tienen en su repertorio comandos dirigidos al procesamiento de archivos y datos, entre ellos: Leer, Calcular, Asignar, Clasificar, Imprimir. Datos: Los datos son smbolos que se convierten en condiciones, hechos, situaciones o valores. Un dato puede significar un nmero, una letra, un signo ortogrfico o cualquier smbolo que represente una cantidad, una medida, una palabra o una descripcin. La importancia de los datos est en su capacidad de asociarse dentro de un contexto para convertirse en informacin. Es decir, por si mismos los datos no tienen capacidad de comunicar un significado y por tanto no pueden afectar el comportamiento de quien los recibe. Para ser tiles, los datos deben convertirse en informacin que ofrezca un significado, conocimiento, ideas o conclusiones.

Tipos de Datos: Como se describi anteriormente, un dato es un campo que puede convertirse en informacin. Existen datos simples (sin estructura) y compuestos (estructurados). Los datos simples son los siguientes Numricos Enteros: Los nmeros enteros son los nmeros naturales positivos y negativos que conocemos: 1; 2; 25; 146; -456 Numricos Reales: Los nmeros reales, son los nmeros que tienen parte decimal: 0.56; 1.00; 25.13; 148.45; -456.23 Lgicos o bolanos: Son aquellos datos cuyos nicos valores slo 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)?

Carcter o Char: Su valor lo comprenden todos los caracteres alfabticos, maysculas y minsculas (A Z), numricos (0 9) y smbolos especiales (#,@,%,&). Carcter String o cadena: Su valor est representado por un conjunto de caracteres. Abril ; Reporte Anual de Fallas Tcnicas ; 1 de mayo, Da del Trabajador

Ejemplo 3: Situacin o cuestiones cotidianas rutinarias o imprevistas. En este orden de ideas, otra clase de ejemplo de Algoritmos, sera el de una llamada telefnica, o el proceso para efectuar un viaje en el Metro de Caracas, o la obtencin de la licencia para conducir o el cambio de un caucho espichado, entre otros; en fin, hay muchas formas de aplicar los algoritmos en cuestiones cotidianas descomponiendo la accin en pasos lgicos, como es el caso de una llamada desde una cabina de un telfono pblico, seria de la siguiente forma: 1.- Inicio 2.- Descolgar el telfono 3.- Esperar la seal digital. 4.- Preguntamos si est daado. Si lo est: Vamos al paso (5). Si no lo est: Vamos al paso (8). 5.- Vociferar una palabra de mal gusto y fruncir el ceo. 6.- Colgar. 7.- Fin. 8.- Digitar los nmeros. 9.- Verificamos si suena ocupado. Si suena ocupado: Vamos al paso (11). Si no lo est: Vamos al paso (13). 10.- Insistir digitando los nmeros. 11.- Ir al paso (8). 12.- Verificamos si contestan. Si contestan: Vamos al paso (14). Si no contestan: Vamos al paso (21). 13.- Preguntamos si se encuentra la persona. Si se encuentra: Vamos al paso (14). Si no se encuentra: Vamos al paso (17). 14.- Hablar lo deseado. 15.- Colgar. 16.- Fin.

CONCLUSIN

Para llegar a la realizacin de un programa es necesario el diseo previo de algoritmo, de modo que sin algoritmo no puede existir un programa. Los algoritmos son independientes tanto del lenguaje de programacin en que se expresan como de la computadora que lo ejecuta.

En cada problema el algoritmo se puede expresar en un lenguaje diferente de programacin y ejecutarse en una computadora distinta; sin embargo, el algoritmo ser siempre el mismo. As, por ejemplo, en una analoga con la vida diaria, una receta de un plato de cocina se puede expresar en espaol, ingles o francs, pero cualquiera que sea el lenguaje, los pasos para la elaboracin del plato se realizaran sin importar el idioma del cocinero.

En la ciencia de la computacin y en la programacin, los algoritmos son ms importantes que los lenguajes de programacin o las computadoras. Un lenguaje de programacin es tan solo un medio para expresar un algoritmo y una computadora es solo un procesador para ejecutarlo. Tanto el lenguaje de programacin como la computadora son los medios para obtener un fin: conseguir que el algoritmo se ejecute y se efecte el proceso correspondiente.

En resumen, un algoritmo es cualquier cosa que funcione paso a paso, donde cada paso se pueda describir sin ambigedad y sin hacer referencia a una computadora en particular, y adems tiene un lmite fijo en cuanto a la cantidad de datos que se pueden leer/escribir en un solo paso. En esencia, la solucin de un problema se puede expresar mediante un algoritmo.

BIBLIOGRAFA

CORREA Uribe, Guillermo. 1992. Desarrollo de Algoritmos y sus aplicaciones. 3era Edicin. Colombia. Editorial McGraw-Hill Inc. JOYANES A., Luis. 2001. Fundamentos de programacin, algoritmos y estructura de datos. Segunda Edicin. Mxico. McGraw-Hill. SEAN, James A. 1998. Anlisis y Diseo de Sistemas de Informacin. 2da Edicin. Mxico. Editorial McGraw-Hill Inc.

ANEXOS

Modelo de Estructura Condicional Simple.

Modelo de Estructura Condicional Doble.

Modelo de Estructura Condicional Mltiple.