PROGRAMA
DFD
ANALISIS
martes, 17 de junio de 2008
martes, 10 de junio de 2008
martes, 3 de junio de 2008
Programación
Saltar a navegación, búsqueda
Varios libros sobre programación
Se conoce como programación de computadores a la implementación de un algoritmo en un determinado lenguaje de programación, conformando un programa. Mientras que un algoritmo se ejecuta en una máquina abstracta que no tiene limitaciones de memoria o tiempo, un programa se ejecuta en una máquina real, que sí tiene esas limitaciones. El lenguaje de programación puede ser de alto nivel, medio nivel o bajo nivel, en función del grado de abstracción.
Programas y algoritmos
Un algoritmo es una secuencia no ambigua, finita y ordenada de instrucciones que han de seguirse para resolver un problema. Un programa normalmente implementa (traduce a un lenguaje de programación concreto) un algoritmo. Nótese que es la secuencia de instrucciones en sí la que debe ser finita, no el número de pasos realizados como la ejecución de ellas.
Los programas suelen subdividirse en partes menores (módulos), de modo que la complejidad algorítmica de cada una de las partes sea menor que la del programa completo, lo cual ayuda al desarrollo del programa.
Según Niklaus Wirth un programa está formado por algoritmos y estructura de datos.
Se han propuesto diversas técnicas de programación, cuyo objetivo es mejorar tanto el proceso de creación de software como su mantenimiento. Entre ellas se pueden mencionar las programaciones lineal, estructurada, modular y orientada a objetos.
Compilación
El programa escrito en un lenguaje de programación (comprensible por el ser humano, aunque se suelen corresponder con lenguajes formales descritos por gramáticas independientes del contexto) no es inmediatamente ejecutado en una computadora. La opción más común es compilar el programa, aunque también puede ser ejecutado mediante un intérprete informático
El código fuente del programa se debe someter a un proceso de transformación para convertirse en lenguaje máquina, interpretable por el procesador. A este proceso se le llama compilación.
Normalmente la creación de un programa ejecutable (un típico.exe para Microsoft Windows) conlleva dos pasos. El primer paso se llama compilación (propiamente dicho) y traduce el código fuente escrito en un lenguaje de programación almacenado en un archivo a código en bajo nivel, (normalmente en código objeto no directamente al lenguaje máquina). El segundo paso se llama enlazado (del inglés link o linker) se junta el código de bajo nivel generado de todos los ficheros que se han mandado compilar y se añade el código de las funciones que hay en las bibliotecas del compilador para que el ejecutable pueda comunicarse con el sistemas operativo y traduce el código objeto a código máquina.
Estos dos pasos se pueden mandar hacer por separado, almacenando el resultado de la fase de compilación en archivos objetos (un típico.obj para Microsoft Windows,.o para Unix), para enlazarlos posteriormente, o crear directamente el ejecutable con lo que la fase de compilación se almacena sólo temporalmente. Un programa podría tener partes escritas en varios lenguajes (generalmente C, C++ y Asm), que se podrían compilar de forma independiente y enlazar juntas para formar un único ejecutable.
Programación e ingeniería del software
Existe una tendencia a identificar el proceso de creación de un programa informático con la programación, que es cierta cuando se trata de programas pequeños para uso personal, y que dista de la realidad cuando se trata de grandes proyectos.
El proceso de creación de software desde el punto de vista de la Ingeniería tiene los siguientes pasos:
1. Reconocer la necesidad de un programa para solucionar un problema ó identificar la posibilidad de automatización de una tarea.
2. Recoger los requisitos del programa. Debe quedar claro qué es lo que debe hacer el programa y para qué se necesita.
3. Realizar el análisis de los requisitos del programa. Debe quedar claro cómo debe realizar el programa las cosas que debe hacer. Las pruebas que comprueben la validez del programa se pueden especificar en esta fase.
4. Diseñar la arquitectura del programa. Se debe descomponer el programa en partes de complejidad abordable.
5. Implementar el programa. Consiste en realizar un diseño detallado, especificando completamente todo el funcionamiento del programa, tras lo cual la codificación debería resultar inmediata.
6. Implantar (instalar) el programa. Consiste en poner el programa en funcionamiento junto con los componentes que pueda necesitar (bases de datos, redes de comunicaciones, etc.)
La Ingeniería del Software se centra en los pasos de planificación y diseño del programa, mientras que antiguamente (programación artesanal) la realización de un programa consistía únicamente en escribir el código.
Saltar a navegación, búsqueda
Varios libros sobre programación
Se conoce como programación de computadores a la implementación de un algoritmo en un determinado lenguaje de programación, conformando un programa. Mientras que un algoritmo se ejecuta en una máquina abstracta que no tiene limitaciones de memoria o tiempo, un programa se ejecuta en una máquina real, que sí tiene esas limitaciones. El lenguaje de programación puede ser de alto nivel, medio nivel o bajo nivel, en función del grado de abstracción.
Programas y algoritmos
Un algoritmo es una secuencia no ambigua, finita y ordenada de instrucciones que han de seguirse para resolver un problema. Un programa normalmente implementa (traduce a un lenguaje de programación concreto) un algoritmo. Nótese que es la secuencia de instrucciones en sí la que debe ser finita, no el número de pasos realizados como la ejecución de ellas.
Los programas suelen subdividirse en partes menores (módulos), de modo que la complejidad algorítmica de cada una de las partes sea menor que la del programa completo, lo cual ayuda al desarrollo del programa.
Según Niklaus Wirth un programa está formado por algoritmos y estructura de datos.
Se han propuesto diversas técnicas de programación, cuyo objetivo es mejorar tanto el proceso de creación de software como su mantenimiento. Entre ellas se pueden mencionar las programaciones lineal, estructurada, modular y orientada a objetos.
Compilación
El programa escrito en un lenguaje de programación (comprensible por el ser humano, aunque se suelen corresponder con lenguajes formales descritos por gramáticas independientes del contexto) no es inmediatamente ejecutado en una computadora. La opción más común es compilar el programa, aunque también puede ser ejecutado mediante un intérprete informático
El código fuente del programa se debe someter a un proceso de transformación para convertirse en lenguaje máquina, interpretable por el procesador. A este proceso se le llama compilación.
Normalmente la creación de un programa ejecutable (un típico.exe para Microsoft Windows) conlleva dos pasos. El primer paso se llama compilación (propiamente dicho) y traduce el código fuente escrito en un lenguaje de programación almacenado en un archivo a código en bajo nivel, (normalmente en código objeto no directamente al lenguaje máquina). El segundo paso se llama enlazado (del inglés link o linker) se junta el código de bajo nivel generado de todos los ficheros que se han mandado compilar y se añade el código de las funciones que hay en las bibliotecas del compilador para que el ejecutable pueda comunicarse con el sistemas operativo y traduce el código objeto a código máquina.
Estos dos pasos se pueden mandar hacer por separado, almacenando el resultado de la fase de compilación en archivos objetos (un típico.obj para Microsoft Windows,.o para Unix), para enlazarlos posteriormente, o crear directamente el ejecutable con lo que la fase de compilación se almacena sólo temporalmente. Un programa podría tener partes escritas en varios lenguajes (generalmente C, C++ y Asm), que se podrían compilar de forma independiente y enlazar juntas para formar un único ejecutable.
Programación e ingeniería del software
Existe una tendencia a identificar el proceso de creación de un programa informático con la programación, que es cierta cuando se trata de programas pequeños para uso personal, y que dista de la realidad cuando se trata de grandes proyectos.
El proceso de creación de software desde el punto de vista de la Ingeniería tiene los siguientes pasos:
1. Reconocer la necesidad de un programa para solucionar un problema ó identificar la posibilidad de automatización de una tarea.
2. Recoger los requisitos del programa. Debe quedar claro qué es lo que debe hacer el programa y para qué se necesita.
3. Realizar el análisis de los requisitos del programa. Debe quedar claro cómo debe realizar el programa las cosas que debe hacer. Las pruebas que comprueben la validez del programa se pueden especificar en esta fase.
4. Diseñar la arquitectura del programa. Se debe descomponer el programa en partes de complejidad abordable.
5. Implementar el programa. Consiste en realizar un diseño detallado, especificando completamente todo el funcionamiento del programa, tras lo cual la codificación debería resultar inmediata.
6. Implantar (instalar) el programa. Consiste en poner el programa en funcionamiento junto con los componentes que pueda necesitar (bases de datos, redes de comunicaciones, etc.)
La Ingeniería del Software se centra en los pasos de planificación y diseño del programa, mientras que antiguamente (programación artesanal) la realización de un programa consistía únicamente en escribir el código.
viernes, 18 de abril de 2008
ANALISIS EJERCICIOS EN DFD










AREA DEL TRIANGULO
OBJETIVO: calcular el area de un triangulo
DESCRIPCIÓN DEL PROBLEMA: se desea calcular el area de un triangulo, se ingresa la base y la altura se genera el resultado deseado area del triangulo.
DATOS DE ENTRADA: base, altura
DATOS DE SALIDA: area
PROCESO:
• ingreso base y altura
• area=(base*altura)/2
• se obtiene el area del triangulo
AREA Y VOLUMEN DE LA ESFERA
OBJETIVO: calcular el area y volumen de una esfera
DESCRIPCION DEL PROBLEMA: se desea calcular el area y volumen de una esfera, se ingresa el radio de la esfera y se genran los resultados esperados.
DATOS DE ENTRADA: radio de la esfera
DATOS DE SALIDA: area y volumen de la esfera
PROCESO:
• ingreso radi de la esfera
• area=4*(3.14159)radio^2
• volumen=(4/3)*(3.14159)radio^3
•se obtiene el area y el volumen
CONVERSIONES
OBJETIVO: calcular el equivalente en pulgadas, yardas,pies una cantidad dada en metros
DESCRIPCION DEL PROBLEMA:se ingresa una cantidad en metros y se pide convertir en pulgadas, pies y yardas
DATOS ENTRADA: metros
DATOS DE SALIDA: pulgadas, pies, yardas
PROCESO:
• ingreso metros
• pulgadas=metros*39.37008
• pies=metros*3.28084
• yardas=metros*1.093613
• se obtiene pulgadas, pies, yardas
CONVERSIONES KILOMETROS
OBJETIVO: pasar una cantidad dada en kilometros a yardas y pies
DESCRIPCION DEL PROBLEMA: ingreso una cantidad en kilómetros y la obtengo en yardas y pies
DATOS DE ENTRADA: kilómetros
DATOS DE SALIDA: yardas y pies
PROCESO:
• ingreso kilómetros
• yardas=kilómetros*1093.611
• pies=kilómetros*3280.83
• se obtienen yardas y pies
FARANHEIT
OBJETIVO: pasar una cantida en centígrados a faraheit
DESCRIPCION DEL PROBLEMA: ingreso una cantida en centígrados y obtengo su equivalente en faranheit
DATOS DE ENTRADA: grados centígrados
DATOS DE SALIDA: grados faranheit
PROCESO:
• ingreso grados centígrados
• faranheit=(9/5)*(centigrados+32)
• obtengo grados faranheit
LA RECTA
OBJETIVO: calcular el valor y de una funcion lineal
DESCRIPCION DEL PROBLEMA: ingreso los valores que detrminan la función y obtengo su valor en y
DATOS DE ENTRADA: valor de X, la pendiente, el termino independiente
DATOS DE SALIDA: el valor de Y
PROCESO:
• ingreso el valor de X, la pendiente, el termino independiente
• Y=M*X+B
• obtengo el valor de y
PROMEDIO
OBJETIVO: calcular el promedio entre tres materias
DESCRIPCION DEL PROBLEMA: ingreso la nota de tres materias y obtengo el promedio de notas
DATOS DE ENTRADA: notafisica, notaquimica, notacalculo
DATOS DE SALIDA: promedio de notas
PROCESO:
•ingreso notas de las tres materias
•promedio=(notafisica+notacalculo+notaquimica)/2
•obtengo promedio
RANGO
OBJETIVO: calcular el rango de accion entre dos valores
DESCRIPCION DEL PROBLEMA: ingreso los valores extremos de una distribucion de datos y obtengo su rango y centro de recorrido
DATOS DE ENTRADA: Xmax, Xmin
DATOS DE SALIDA: rango, centro de recorrido
PROCESO:
• ingreso Xmax, Xmin
• rango= Xmax-Xmin
• centro de recorrido=(Xmax-Xmin)/2
• obtengo rango y centro de recorrido
RENDIMIENTO
OBJETIVO: calcular el rendimiento de cierto dinero
DESCRIPCION DEL PROBLEMA: ingreso la cantidad de dinero y la tasa de interes para obtener el rendimiento
DATOS DE ENTRADA: cantidad de dinero, tasa de interés
DATOS DE SALIDA: rendimiento
PROCESO:
• ingreso cantidad de dinero, tasa de interés
• rendimiento= cantidad de dinero*tasa de interés
• obtengo rendimiento
VELOCIDAD
OBJETIVO: calcular la velocidad
DESCRIPCION DEL PROBLEMA: ingreso distancia y tiempo y obtengo la velocidad
DATOS DE ENTRADA: distancia y tiempo
DATOS DE SALIDA: velocidad
PROCESO:
• ingreso distanci recorrida y tiempo empleado
• velocidad= distancia/tiempo
• obtengo velocidad
JORGE ALBERTO QUIZA POLANIA 2007166312
OBJETIVO: calcular el area de un triangulo
DESCRIPCIÓN DEL PROBLEMA: se desea calcular el area de un triangulo, se ingresa la base y la altura se genera el resultado deseado area del triangulo.
DATOS DE ENTRADA: base, altura
DATOS DE SALIDA: area
PROCESO:
• ingreso base y altura
• area=(base*altura)/2
• se obtiene el area del triangulo
AREA Y VOLUMEN DE LA ESFERA
OBJETIVO: calcular el area y volumen de una esfera
DESCRIPCION DEL PROBLEMA: se desea calcular el area y volumen de una esfera, se ingresa el radio de la esfera y se genran los resultados esperados.
DATOS DE ENTRADA: radio de la esfera
DATOS DE SALIDA: area y volumen de la esfera
PROCESO:
• ingreso radi de la esfera
• area=4*(3.14159)radio^2
• volumen=(4/3)*(3.14159)radio^3
•se obtiene el area y el volumen
CONVERSIONES
OBJETIVO: calcular el equivalente en pulgadas, yardas,pies una cantidad dada en metros
DESCRIPCION DEL PROBLEMA:se ingresa una cantidad en metros y se pide convertir en pulgadas, pies y yardas
DATOS ENTRADA: metros
DATOS DE SALIDA: pulgadas, pies, yardas
PROCESO:
• ingreso metros
• pulgadas=metros*39.37008
• pies=metros*3.28084
• yardas=metros*1.093613
• se obtiene pulgadas, pies, yardas
CONVERSIONES KILOMETROS
OBJETIVO: pasar una cantidad dada en kilometros a yardas y pies
DESCRIPCION DEL PROBLEMA: ingreso una cantidad en kilómetros y la obtengo en yardas y pies
DATOS DE ENTRADA: kilómetros
DATOS DE SALIDA: yardas y pies
PROCESO:
• ingreso kilómetros
• yardas=kilómetros*1093.611
• pies=kilómetros*3280.83
• se obtienen yardas y pies
FARANHEIT
OBJETIVO: pasar una cantida en centígrados a faraheit
DESCRIPCION DEL PROBLEMA: ingreso una cantida en centígrados y obtengo su equivalente en faranheit
DATOS DE ENTRADA: grados centígrados
DATOS DE SALIDA: grados faranheit
PROCESO:
• ingreso grados centígrados
• faranheit=(9/5)*(centigrados+32)
• obtengo grados faranheit
LA RECTA
OBJETIVO: calcular el valor y de una funcion lineal
DESCRIPCION DEL PROBLEMA: ingreso los valores que detrminan la función y obtengo su valor en y
DATOS DE ENTRADA: valor de X, la pendiente, el termino independiente
DATOS DE SALIDA: el valor de Y
PROCESO:
• ingreso el valor de X, la pendiente, el termino independiente
• Y=M*X+B
• obtengo el valor de y
PROMEDIO
OBJETIVO: calcular el promedio entre tres materias
DESCRIPCION DEL PROBLEMA: ingreso la nota de tres materias y obtengo el promedio de notas
DATOS DE ENTRADA: notafisica, notaquimica, notacalculo
DATOS DE SALIDA: promedio de notas
PROCESO:
•ingreso notas de las tres materias
•promedio=(notafisica+notacalculo+notaquimica)/2
•obtengo promedio
RANGO
OBJETIVO: calcular el rango de accion entre dos valores
DESCRIPCION DEL PROBLEMA: ingreso los valores extremos de una distribucion de datos y obtengo su rango y centro de recorrido
DATOS DE ENTRADA: Xmax, Xmin
DATOS DE SALIDA: rango, centro de recorrido
PROCESO:
• ingreso Xmax, Xmin
• rango= Xmax-Xmin
• centro de recorrido=(Xmax-Xmin)/2
• obtengo rango y centro de recorrido
RENDIMIENTO
OBJETIVO: calcular el rendimiento de cierto dinero
DESCRIPCION DEL PROBLEMA: ingreso la cantidad de dinero y la tasa de interes para obtener el rendimiento
DATOS DE ENTRADA: cantidad de dinero, tasa de interés
DATOS DE SALIDA: rendimiento
PROCESO:
• ingreso cantidad de dinero, tasa de interés
• rendimiento= cantidad de dinero*tasa de interés
• obtengo rendimiento
VELOCIDAD
OBJETIVO: calcular la velocidad
DESCRIPCION DEL PROBLEMA: ingreso distancia y tiempo y obtengo la velocidad
DATOS DE ENTRADA: distancia y tiempo
DATOS DE SALIDA: velocidad
PROCESO:
• ingreso distanci recorrida y tiempo empleado
• velocidad= distancia/tiempo
• obtengo velocidad
JORGE ALBERTO QUIZA POLANIA 2007166312
martes, 15 de abril de 2008
programacion estructurada
Origenes de la programación estructurada
A finales de los años sesenta surgió una nueva forma de programar que no solamente daba lugar a programas fiables y eficientes, sino que además estaban escritos de manera que facilitaba su comprensión posterior.
El teorema del programa estructurado, demostrado por Böhm-Jacopini, demuestra que todo programa puede escribirse utilizando únicamente las tres instrucciones de control siguientes:
Secuencia
Instrucción condicional.
Iteración (bucle de instrucciones) con condición al principio.
Solamente con estas tres estructuras se pueden escribir todos los programas y aplicaciones posibles. Si bien los lenguajes de programación tienen un mayor repertorio de estructuras de controll, éstas pueden ser construidas mediante las tres básicas.
Por ejemplo, en Visual Basic la secuencia de instrucciones consiste en la escritura de una instrucción debajo de otra (también se pueden poner en la misma línea separadas por el símbolo de dos puntos ":" aunque no es recomendable). La instrucción condicional es la instrucción If y la iteración con condición al inicio sería la instrucción do-while-loop o while-wend.Ventajas de la programación estructurada
VENTAJAS DE LA PROGRAMACION ESTRUCTURADA
Con la programación estructurada, elaborar programas de computador sigue siendo una labor que demanda esfuerzo, creatividad, habilidad y cuidado. Sin embargo, con este estilo podemos obtener las siguientes ventajas:
1. Los programas son más fáciles de entender, ya que pueden ser leído de forma secuencial, sin necesidad de hacer seguimiento a saltos de línea (GOTO) dentro de los bloques de código para entender la lógica.
2. La estructura del programa es clara puesto que las instrucciones están más ligadas o relacionadas entre sí.
3. Reducción del esfuerzo en las pruebas. El seguimiento de los fallos o errores del programa ("debugging") se facilita debido a la estructura más visible, por lo que los errores se pueden detectar y corregir más fácilmente.
4. Reducción de los costos de mantenimiento de los programas.
5. Programas más sencillos y más rápidos (ya que es más fácil su optimización).
6. Los bloques de código son auto explicativos, lo que facilita a la documentación.
7. Los GOTO se reservan para construir las instrucciones básicas (selección e iteración)
Inconvenientes de la programación estructurada
DESVENTAJAS DE LA PROGRAMACION ESTRUCTURADA
El principal inconveniente de este método de programación, es que se obtiene un único bloque de programa, que cuando se hace demasiado grande puede resultar problemático su manejo, esto se resuelve empleando la programacion modular , definiendo módulos interdependientes programados y compilados por separado. Un método un poco más sofisticado es la programacion por capas
, en la que los módulos tienen una estructura jerárquica muy definida y se denominan capas.
A finales de los años sesenta surgió una nueva forma de programar que no solamente daba lugar a programas fiables y eficientes, sino que además estaban escritos de manera que facilitaba su comprensión posterior.
El teorema del programa estructurado, demostrado por Böhm-Jacopini, demuestra que todo programa puede escribirse utilizando únicamente las tres instrucciones de control siguientes:
Secuencia
Instrucción condicional.
Iteración (bucle de instrucciones) con condición al principio.
Solamente con estas tres estructuras se pueden escribir todos los programas y aplicaciones posibles. Si bien los lenguajes de programación tienen un mayor repertorio de estructuras de controll, éstas pueden ser construidas mediante las tres básicas.
Por ejemplo, en Visual Basic la secuencia de instrucciones consiste en la escritura de una instrucción debajo de otra (también se pueden poner en la misma línea separadas por el símbolo de dos puntos ":" aunque no es recomendable). La instrucción condicional es la instrucción If y la iteración con condición al inicio sería la instrucción do-while-loop o while-wend.Ventajas de la programación estructurada
VENTAJAS DE LA PROGRAMACION ESTRUCTURADA
Con la programación estructurada, elaborar programas de computador sigue siendo una labor que demanda esfuerzo, creatividad, habilidad y cuidado. Sin embargo, con este estilo podemos obtener las siguientes ventajas:
1. Los programas son más fáciles de entender, ya que pueden ser leído de forma secuencial, sin necesidad de hacer seguimiento a saltos de línea (GOTO) dentro de los bloques de código para entender la lógica.
2. La estructura del programa es clara puesto que las instrucciones están más ligadas o relacionadas entre sí.
3. Reducción del esfuerzo en las pruebas. El seguimiento de los fallos o errores del programa ("debugging") se facilita debido a la estructura más visible, por lo que los errores se pueden detectar y corregir más fácilmente.
4. Reducción de los costos de mantenimiento de los programas.
5. Programas más sencillos y más rápidos (ya que es más fácil su optimización).
6. Los bloques de código son auto explicativos, lo que facilita a la documentación.
7. Los GOTO se reservan para construir las instrucciones básicas (selección e iteración)
Inconvenientes de la programación estructurada
DESVENTAJAS DE LA PROGRAMACION ESTRUCTURADA
El principal inconveniente de este método de programación, es que se obtiene un único bloque de programa, que cuando se hace demasiado grande puede resultar problemático su manejo, esto se resuelve empleando la programacion modular , definiendo módulos interdependientes programados y compilados por separado. Un método un poco más sofisticado es la programacion por capas
, en la que los módulos tienen una estructura jerárquica muy definida y se denominan capas.
miércoles, 9 de abril de 2008
FLISOL 2008
Es el festival latinoamericano de instalacion de software libre, es el evento de difusion de software libre mas grande de latinoamerica, su principal objetivo es promover el uso de software libre.
diversas comunidades de sofware libre en cada pais organizan eventos en lo sque instalan este tipo de sofware totalmente gratis en la scoputadoras de los asistentes.
este evento se llevara a caboel sabado 26 de abril.
QUIEN LO ORGANIZA
La Comunidad de Software Libre en Latinoamérica, conformada por personas y grupos de diversa índole, con el apoyo de otras entidades, principalmente educativas, y algunos patrocinadores de los eventos en cada localidad.
LA ASISTENCIA ES TOTALMENTE LIBRE Y GRATUITA
El evento está dirigido a todo tipo de público: estudiantes, académicos, empresarios, trabajadores, funcionarios públicos, entusiastas y aun personas que no poseen mucho conocimiento informático. Si posees o no conocimientos e intereses en informática, licencias, derecho de autor/copyright y demás áreas de la ciencia y la tecnología, déjate tentar, asiste y participa del evento. Nuestro objetivo es compartir conocimientos y ansias de libertad.
jueves, 3 de abril de 2008
QUE ES UN ALGORITMO
Definicion:
Un algoritmo es un conjunto finito de pasos definidos, estructurados en el tiempo y formulados con base a un conjunto finito de reglas no ambiguas, que proveen un procedimiento para dar la solución o indicar la falta de esta a un problema en un tiempo determinado.
Es un sistema por el cual se llega a una solución, teniendo en cuenta que debe de ser definido, finito y preciso.
Conjunto de sentencias / instrucciones en lenguaje nativo, los cuales expresan la lógica de un programa.
Descripción exacta de la secuencia en que se ha de realizar un conjunto de actividades tendientes a resolver un determinado tipo de problema o procedimiento.
Conjunto ordenado y finito de pasos que permite hallar la solución de un problema.
Conjunto de reglas que permiten obtener un resultado determinado a partir de ciertas reglas definidas.
Descripción precisa de una sucesión de instrucciones que permite llevar a cabo un trabajo en un número finito de pasos.
Toda receta, proceso, rutina, método, procedimiento, técnica, formula que resuelven un determinado problema.
Conjunto de instrucciones concretas y detalladas mediante el cual se consigue una acción determinada.
Un conjunto de símbolos y procedimientos usados en la realización de un cálculo.
Una secuencia de pasos que conducen a la realización de una tarea.
Caracteristicas:
Las características fundamentales que debe cumplir todo algoritmo son:
Ser definido: Sin ambigüedad, cada paso del algoritmo debe indicar la acción a realizar sin criterios de interpretación.
Ser finito: Un número específico y numerable de pasos debe componer al algoritmo, el cual deberá finalizar al completarlos.
Tener cero o más entradas: Datos son proporcionados a un algoritmo como insumo (o estos son generados de alguna forma) para llevar a cabo las operaciones que comprende.
Tener una o más salidas: Debe siempre devolver un resultado; de nada sirve un algoritmo que hace algo y nunca sabemos que fue. El devolver un resultado no debe ser considerado como únicamente “verlos” en forma impresa o en pantalla, como ocurre con las computadoras. Existen muchos otros mecanismos susceptibles de programación que no cuentan con una salida de resultados de esta forma. Por salida de resultados debe entenderse todo medio o canal por el cual es posible apreciar los efectos de las acciones del algoritmo.
Efectividad: El tiempo y esfuerzo por cada paso realizado debe ser preciso, no usando nada más ni nada menos que aquello que se requiera para y en su ejecución.
miércoles, 12 de marzo de 2008
caracteristicas de un buen algoritmo
- debe ser preciso e indicar un orden de realizacion de cada paso
- debe ser definido, es decir, si se repite varias veces debe dar el mismo resultado
- debe ser finito, es decir debe terminar en algun momento
- debe ser definido, es decir, si se repite varias veces debe dar el mismo resultado
- debe ser finito, es decir debe terminar en algun momento
Suscribirse a:
Entradas (Atom)