Sunteți pe pagina 1din 8

INTRODUCCION A LA PROGRAMACION

"DIAGRAMAS DE FLUJO" Ingresaste en fecha : 2/19/2008 A horas : 12:16 INTRODUCCION.La iniciacin a la programacin suele ser siempre casi problemtica ya sea por la carencia de conocimientos informticos del alumno y otras. Esta pgina tiene fines educatvos y va dirigido a aquellos estudiantes o estudiosos que comienzan la programacin persigue como objetivo fundamental las tecnicas de programacin Clsica CONTENIDO.La primera parte nos introduce en los conceptos basicos de algoritmos y programas que debemos conocer resaltando los trminos elementales de accin proceso,datos y expreciones. La segunda parte se dedica a las herramientas clsicas de programacin : DIAGRAMAS DE FLUJO Y pseudocodigos. En la tercera parte se comienza en realidad a profundizar en la programacin. Si te estas iniciando por primera vez en la programacin te recomiendo que siguas en orden los siguientes pasos 1.- Conceptos Bsicos

CONCEPTOS QUE DEBES CONOCER PARA INICIARTE EN LA PROGRAMACION


ACCION Una accin es un suceso o acontecimiento producido por un actor (ejecutante). tiene la caracterstica de una duracin limitada y produce un resultado bien definido y previsto PROCESO Es una accin que se puede descomponer en otras mas smples. Se puede considerar un proceso como un conjunto de acciones elementales que forman un acontecimiento. Los procesos puden ser:

Procesos SECUENCIALES Procesos PARALELOS

PROCESOS SECUENCIALES Dos acciones no se ejecutan simultneamente. PROCESOS PARALELOS Si se ejecutan dos o mas acciones simultneamente. A lo largo de mi pgina slo tratare procesos secuenciales que en un instante dado solo se pueden ejecutar una nica accin. ALGORITMO

Un algoritmo es una serie de operaciones detalladas y no ambiguas. En otras palabras un algoritmo es un conjunto de reglas para resolver una cierta clase de problemas . La receta de la ABUELA para hacer "Tucumanas" es un algoritmo. Un algoritmo es el medio por el que se explica cmo puede resolverse un problena,mediante aproximaciones paso a paso. Se puede formular de muchas formas con el cuidado de que no exista ambiguedad Al conjunto formado por la representacin de datos utilizada y el algoritmo mismo se llama programa CARACTERISTICAS DE LOS ALGORITMOS Las principales caracteristicas de los algoritmos son: El algoritmo debe ser sencillo e indicar el orden de realizacin de cada paso ii. Un algoritmo debe estar definido. iii. El algoritmo de ser finito. i.

Un algoritmo describe la transformacin de una entrada en la salida La entrada se refiere a algo que existe y es utilizado por el algoritmo para transformarlo en los resultados que uno palnifica.

2.- Expreciones 3.- Diagramas de Flujo 4.- Algunas estrategias para la resolucin de problemas Si ya estas familiarizado con los conceptos, las expreciones y las estruturas de los diagramas flujo vistas en las referencias anteriores , en el siguiente listado existen ejercicios (desafios) que creo convenientes para fortalecer lo aprendido

Ejercicios 1. Estructuras secuenciales. 2. Estructuras selectivas. 3. Estructuras repetitivas.

Algoritmo
Na Galipedia, a wikipedia en galego.

Ir a: navegacin, procura Un algoritmo un conxunto ordenado e finito de operacins sinxelas que conducen resolucin dun problema, como por exemplo a formulacin programtica paso a paso para producir unha serie de resultados nun programa en informtica. Mis especificamente, en matemticas, constite o conxunto de procesos (e smbolos que os representan) para efectuar un clculo. Os algoritmos pdenos implementar os programas de computadores. A palabra algoritmo ten orixe no alcume Al-Khwarizmi, do matemtico persa do sculo IX, Mohamed ben Musa, cuxas obras foron traducidas no occidente cristin no sculo XII, recibindo unha delas o nome "Algorithmi de numero indorum", sobre os algoritmos usando o sistema de numeracin decimal (indiano). Outros autores, con todo, defenden a orixe da palabra en Al-goreten (raz - concepto que se pode aplicar aos clculos). O concepto de algoritmo frecuentemente ilustrado co exemplo dunha receita, anda que moitos algoritmos sexan mis complexos. Eles poden repetir pasos (facer interaccins) ou necesitar de decisins (tales como comparacins ou lxica) ata que a tarefa sexa completada. Un algoritmo correctamente executado non ir resolver un problema se o algoritmo estiver incorrecto ou non for apropiado ao problema. Un algoritmo non representa, necesariamente, un programa de computador, e si os pasos necesarios para realizar unha tarefa. A sa implementacin pode ser feita por un computador, por outro tipo de autmata ou mesmo por un ser humano. Diferentes algoritmos poden realizar a mesma tarefa usando un conxunto diferenciado de instrucins en mis ou menos tempo, espazo ou esforzo do que outros. Por exemplo, un algoritmo para se vestir pode especificar que vostede vista primeiro as medias e os zapatos antes de vestir a calza en canto outro algoritmo especifica que vostede debe primeiro vestir a calza e despois as medias e os zapatos. Fica claro que o primeiro algoritmo mis difcil de executar que o segundo.

ndice
[mostrar]

[editar] Algoritmos e linguaxes de programacin de computadores

Xeralmente, os algoritmos descrbense informalmente nunha linguaxe prxima da lingua natural, mis facilmente comprendida por un ser humano do que por un computador. Un algoritmo pode, na maior parte dos casos, ser implementado en calquera linguaxe de programacin.

[editar] Formalizando algoritmos


Un programa de computador esencialmente un algoritmo que di ao computador os pasos especficos e en que orde eles deben ser executados, como por exemplo, os pasos a seren tomados para calcular as notas que sern impresas nos boletns dos alumnos dunha escola. Para calquera proceso computacional, o algoritmo precisa estar rigorosamente definido, especificando a maneira que el se comportar en todas as circunstancias. A correctitude do algoritmo pode ser probada matematicamente, ben como a cantidade asinttica de tempo e espazo (complexidade) necesarios para a sa execucin. Estes aspectos dos algoritmos son albo da anlise de algoritmos.

[editar] Implementacin
Hai hoxe unha grande variedade de linguaxes de programacin, cada unha con caractersticas especficas que poden facilitar a implementacin de determinados algoritmos ou atender a propsitos mis xerais. Os algoritmos non se implementan s como programas para computadores, senn que tamn se poden implementar en circutos elctricos ou ata no noso cerebro cando executamos operacins aritmticas. A anlise de algoritmos unha rama da ciencia da computacin que estuda as tcnicas de proxecto de algoritmos e os algoritmos de forma abstracta, sen estaren implementados nunha linguaxe de programacin en particular ou implementadas dalgn outro modo. Un medio de exhibir un algoritmo mostrar o seu pseudocdigo.

[editar] Algoritmo en Pseudocdigo


Exemplo dun algoritmo que ir retornar a suma de dous valores (tamn coecidos como parmetros ou argumentos) que son introducidos na chamada da funcin:
funcin SomaDeDousValores (A numrico, B numrico) { declara SUMA numrico SUMA <-- A + B retorna SUMA }

Exemplo dun algoritmo (WinPseudo 1.4) que ir imprimir todos os nmeros menores que <Limite>:
#----------------------------------------# PseudoCodigo para imprimir todos os # numeros menores que <Limite>

#----------------------------------------INICIO Programa1 - Imprime Todos os Numeros menores que <J> VAR NUMERICO i NUMERICO Limite FIN-VAR LER (Limite) IMPRIMIR NL i = 0 MENTRAS (i < Limite) IMPRIMIR ENTEIRO (i) IMPRIMIR ", " i = i + 1 FIN-MENTRAS FINAL

Fundamentos de programacin/Algoritmos y programas


De Wikilibros, la coleccin de libros de texto de contenido libre. < Fundamentos de programacin Saltar a navegacin, bsqueda

Tabla de contenidos
[mostrar]

[editar] Qu es un algoritmo?
Si se consulta en la Wikipedia la definicin de algoritmo, se entiende que ste es un conjunto finito de instrucciones que se deben seguir para resolver un problema. No obstante, desde el punto de vista de la programacin de ordenadores, la definicin del algoritmo como la especificacin de una serie de pasos, es incompleta. Debe observarse que los ordenadores son equipos que tienen limitaciones fsicas en cuanto a capacidad de almacenamiento y procesamiento. Por consiguiente debemos refinar un poco ms nuestra definicin de algoritmo para hacerla aplicable de manera efectiva en el mbito de la informtica. Definicin: Un algoritmo se entiende como una sucesin finita de pasos que debe cumplir las siguientes especificaciones: 1. Cada paso del algoritmo debe estar bien definido: Esto significa que la definicin de un paso debe ser suficientemente clara, para que una persona pueda entenderla y realizarla. Si bien no se puede dar un criterio determinstico para decidir si un paso est bien definido, debemos apelar al sentido comn para decidir que un paso est especificado sin ambigedades.

2. Un algoritmo debe tener un principio y un fin: Un programa es un algoritmo escrito con un objetivo: conseguir un resultado. No tiene sentido crear un programa que espere ~ segundos (infinitos segundos) y luego escriba en pantalla "Hola Mundo!", del mismo modo que un algoritmo debe tener un principio bien definido (tampoco tiene sentido el algoritmo "haz nada, y luego escribe Hola Mundo!").

[editar] Cmo especificar un algoritmo?


para editar un algoritmo se hace lo siguiente 1

[editar] Modelos computacionales [editar] Programas: Algoritmos para ser ejecutados por un ordenador
Un ordenador o computadora est, desde que se enciende hasta que se apaga totalmente, ejecutando un algoritmo. Por lo general, estos algoritmos son vagos y confusos para que los entienda una mquina. Una mquina no puede entender "escribe Hola Mundo!" porque no sabe lo que es "escribe" ni lo que es una letra o un espacio, ni lo que es una pantalla. En cambio, puede entender "mov eax, 0x23afb31" (escribir en la direccin de memoria eax el nmero 0x23afb31), aunque nosotros no. Un ordenador es solo un circuito electrnico, no funciona a base de magia ni nada por el estilo. Debido a lo dificil que es escribir en lenguaje mquina, e incluso en ensamblador, se crearon diferentes lenguajes de programacin, ms o menos parecidos al ingls actual y a cmo se redacta un algoritmo. Estos lenguajes proveen de cosas tan complejas para una mquina como los bucles for. Los compiladores se encargan de traducir esos ficheros al lenguaje ensamblador que corresponda, el ensamblador de traducirlos a lenguaje mquina y el enlazador de juntar todo ese cdigo mquina en un solo archivo, el programa. Y el microprocesador, de ir encendiendo o apagando transistores segn lo que le diga el cdigo mquina.

[editar] Qu instrucciones ejecuta un ordenador?


[editar] Lenguaje de mquina
Cada tipo de microprocesador contiene un conjunto de instrucciones que realizan ciertas operaciones sobre una o ms palabras de bits; las instrucciones van tambin codificadas en bits. No queremos hacer aqu una discusin sobre arquitectura de ordenadores, por lo que con esto debe valer por ahora. Se entiende que escribir slo con dos teclas, el 0 y el 1, es incmodo. Histricamente, a la hora de disear un algoritmo para que el ordenador ejecutara, se escriba mediante unas etiquetas mnemotcnicas; ste fue el origen del lenguaje ensamblador. Por ejemplo quizs en una cierta arquitectura la instruccin de borrado de memoria (Memory Clear, en ingls) corresponda al cdigo 010. Pronto surgieron programas que lean, siguiendo el ejemplo, MC, y lo sustituan por 010.

[editar] Lenguaje ensamblador


El cdigo mquina tena dos grandes inconvenientes para los programadores: - El primero es que se trata de unas instrucciones difciles de recordar ya que no guardan relacin con la operacin que se est realizando. - El segundo inconveniente es que puede y de hecho hay diferencias entre las instrucciones de un procesador a otro. Todo esto ha llevado a "poner nombre" a las instrucciones de cdigo mquina de manera que a una secuencia concreta de bits que realiza una operacin se le pone un nombre sencillo que identifique la operacin. Esta traduccin a un lenguaje ms sencillo para las personas resulta en una mayor comodidad para el programador, adems el proceso de traduccin inverso de lenguaje ensamblador a cdigo mquina puede ser realizado por un sencillo programa.

[editar] Programacin para seres humanos


[editar] Lenguajes de alto nivel
Sobre este lenguaje ensamblador inicial se fueron construyendo otros lenguajes de programacin de ms alto nivel; esto significa que ocultan ciertos aspectos de manera que el programador no se ha de preocupar sobre si en la mquina que quiere que se ejecute el algoritmo el MC corresponde a la instruccin 101 o 010. Se produce, por tanto, una abstraccin de datos, muy deseable para poder utilizar el trabajo de otros para avanzar un paso ms en vez de tener que "reinventar la rueda", como se suele decir. Estos textos en los que se codifican los algoritmos son los cdigos fuente; siguen las reglas sintcticas de un determinado lenguaje de programacin. Existen numerosos lenguajes de programacin, y se utiliza uno u otros segn sus caractersticas se adecen ms o menos a la resolucin de nuestro problema.

[editar] Traductores e intrpretes


Tras la escritura del algoritmo, un compilador o un intrprete (otros programas) transformarn el texto en cdigo mquina que el procesador es capaz de ejecutar. Toda esta abstraccin permite resolver problemas alejados de sumar nmeros binarios, como pueden ser la consulta de esta misma enciclopedia o jugar a un videojuego en 3D.

[editar] Lenguajes interpretados vs. lenguajes compilados


Los lenguajes interpretados nacen como respuesta a la dificultad de manejo de los compilados. Un lenguaje compilado es slo apto para un sistema operativo o formato de ejecutable (en Linux y Unix System V es ELF, en Windows o incluso en BSD es muy diferente), y es tedioso de manejar: para comprobar bugs o errores el computador debe:

Compilar cada uno de los ficheros de cdigo. Ensamblarlos en ficheros objeto.

Enlazar los ficheros objeto. Volverlos a ensamblar.

Todo eso no es gran derroche de recursos para un ordenador medio actualmente, pero dura sus 10 o 15 segundos. En cambio, con un lenguaje interpretado, el programa intrprete analiza el fichero de cdigo y lo va ejecutando en tiempo real, sin compilarlo ni ensamblarlo. Otra de las ventajas de los lenguajes interpretados es que son multiplataforma: un programa en Perl, por ejemplo, no debe ser compilado dos veces (una para Unix y otra para Windows). Con que haya diferentes versiones del intrprete en cada uno de esos ordenadores, especficamente compilados para ellos, basta. Sus desventajas:

Consume muchos recursos de memoria, sobre todo RAM. Se depende del intrprete: si no tienes instalado el intrprete que corresponda, no podrs ejecutar el programa.

Ejemplos de lenguajes interpretados son Perl, Python, Tcl/Tk, BASIC, LISP (en algunas de sus versiones)... Obtenido de "http://es.wikibooks.org/wiki/Fundamentos_de_programaci %C3%B3n/Algoritmos_y_programas"

S-ar putea să vă placă și