sábado, 24 de septiembre de 2011

Representación gráfica de algoritmos

Representación grafica de algoritmos
Para representar un algoritmo se debe utilizar algún método de permita independizar dicho algoritmo  de lenguaje de programación elegido.
Método usuales para representar un algoritmo son:
-          Diagrama de flujo
-          Diagrama estructurado o N-S
-          Pseudocódigo

Diagrama de flujo: para diseñarlos se usan deterinados símbolos o figuras que representan una acción dentro del procedimiento. Utilizan símbolo, con los passos del algoritmo escritos en el símbolo adecuado y están unidos con flechas llamados líneas de flujos que indican orden en que los pasos deben ser ejecutados.

Reglas para su elaboración
Se escride de arriba hacia abajo y de izquierda a derecha
Simplemente se uasan flechas verticales y horizontales evitar cruces de flujos
En cada paso expresar una acción concreta.




Dichos diagramas se construyen utilizando ciertos símbolos de uso especial como son rectángulos, diamantes, óvalos, y pequeños círculos, estos símbolos están conectados entre sí por flechas, conocidas como líneas de flujo. A continuación se detallarán estos símbolos.




Terminal




Representa el inicio y fin de un programa. También puede representar una parada o interrupción programada que sea necesaria realizar en un programa.


Entrada / salida




Cualquier tipo de introducción de datos en la memoria desde los periféricos o registro de información procesada en un periférico.


Proceso








Cualquier tipo de operación que pueda originar cambio de valor, formato o posición de la información almacenada en memoria, operaciones aritméticas, de transformaciones, etc.


Decisión




Indica operaciones lógicas o de comparación entre datos (normalmente dos) y en función del resultado de la misma determina (normalmente si y no) cual de los distintos caminos alternativos del programa se debe seguir


Conector Misma Página




Sirve para enlazar dos partes cualesquiera de un diagrama a través de un conector en la salida y otro conector en la entrada. Se refiere a la conexión en la misma pagina del diagrama


Indicador de dirección o línea de flujo




Indica el sentido de la ejecución de las operaciones


Salida




Se utiliza en ocasiones en lugar del símbolo de salida. El dibujo representa un pedazo de hoja. Es usado para mostrar datos o resultados.



Características


Sintética: La representación que se haga de un sistema o un proceso deberá quedar resumido en pocas hojas, de preferencia en una sola. Los diagramas extensivos dificultan su comprensión y asimilación, por tanto dejan de ser prácticos.


Simbolizada: La aplicación de la simbología adecuada a los diagramas de sistemas y procedimientos evita a los analistas anotaciones excesivas, repetitivas y confusas en su interpretación.


De forma visible a un sistema o un proceso: Los diagramas nos permiten observar todos los pasos de un sistema o proceso sin necesidad de leer notas extensas. Un diagrama es comparable, en cierta forma, con una fotografía aérea que contiene los rasgos principales de una región, y que a su vez permite observar estos rasgos o detalles principales.


- Permitir al analista asegurarse que ha desarrollado todos los aspectos del procedimiento.


- Dar las bases para escribir un informe claro y lógico.


- Es un medio para establecer un enlace con el personal que eventualmente operará el nuevo procedimiento.











Programa

El programa es un conjunto de instrucciones y se dividen en informática:
- Binario: UNIX
- .exe: WINDOWS
Estos son ejecutados por programadores que pueden ser softwares de sistemas o software de aplicación

Ejecución y almacenamiento de los programas

Los programas se almacenan en una memoria no volátil (Ram) bajo el control de SO
-Programas empotrados en hardware
- programas cargados manualmente
- programas generados manualmente
- programa de ejecución simultanea

programación

es el proceso de diseñar, escribir y mantener el código fuente de programas computacionales . el código fuente es escrito en un lenguaje de programación. Su propósito es crear programas que muestran un comportamiento deseado. programar involucra el diseño del código.

Los programas suelen dividirse en partes menores llamados módulos. se han propuesto diversas técnicas de programación parar mejorar el proceso de creación de software.
- Estructurada
- Modular
- Declarativa
- Orientada a objetos

Paradigma de la programación

Es un modelo el cual una comunidad de programadores desarrollan un programa basado en un núcleo central para resolver determinados problema.

Tipos
- Imperativo (algorítmico)
. Entrada de datos
. Estados
. Flujo de control
. Condicionales

- Declarativa
. Afirmaciones
. Restricción o reglas
. Ecuaciones
. Preposiciones
. Transformaciones
. Incógnitas o hipótesis
. lips, scheme, haskell

-Demostrativo
. Programación de ejemplos
. Generalizar
. Simular

sábado, 10 de septiembre de 2011

Analisis del Problema

Análisis del problema cuando un programador plantea un problema que resuelve resuelve mediante su ordenados. Por lo general ese usuario tendría conocimientos mas o menos amplios sobre el dominio del problema .pero no es habitual que tenga conocimientos de información por
 El  informático que va a resolver un determinado  problema puede ser un experto programador. Pero en principios no tiene por que conocer el dominio del problema.
Al abordar un problema que se quiere resolver mediante un ordenador. El programador necesita de la experiencia del experto del dominio para entender el problema

Análisis del problema..
Especializaciones
·         Proceso: son los diferentes procesamientos en los cuales se utilizatan los datos proporcionados para resolver el problema              
·         entrada : son todos los datos que hay que ingresar para resolver el  problema
·         salida: es la resolución del problema

la función de análisis
la parte esencial de la planteacion y diseño la constituye el analisi de los sistemas hipotéticos desde el punto de vista de los objetivos de  las preposiciones y de las condiciones limitativas
herramientas
·         seleccional la herramienta correcta  para un análisis dado
·         reconocer el momento en que se daba retrocede para adquirir mejores facilidades
·         consultar con los expertos y estar en capacidad de entenderse en el mismo lenguaje
conocer los limites de utilización  de determinada herramienta.





Del libro "Fundamentos de Programación" de Luis Joyanes Aguilar

El proceso de resolución de un problema con una computadora conduce a la escritura de un programa y a su ejecución en la misma.

Las fases de resolución de un problema con la computadora son:

- Análisis del problema.
- Diseño del Algoritmo.
- Codificación.
- Compilación y Ejecución.
- Verificación.
- Depuración.
- Mantenimiento.
- Documentación.

jueves, 8 de septiembre de 2011

Programas Ejecutables

Ejecutables
Un ejecutable es tradicionalmente un archivo binario cuyo contenido se interpreta por el ordenador como programa.
Dependiendo el tipo de que se traten las instrucciones, hablaremos de ejecutables  portables y no portables. Un programa ejecutable no tiene por que necesariamente contener código de máquina, sino que puede tener instrucciones a interpretar por otro programa.
En la mayoría de los sistemas modernos un ejecutable contiene mucha información que no es del programa en si.

Interfaz de línea de comando
 Es un método que permite q las personas dar instrucciones a algún programa informático, promedio de texto simple. Puede emplearse interactivamente, escribiendo instrucciones en algunas especia de entrada de texto, o pueden utilizarse de una forma mucho más automatizada, leyendo comandos desde un archivos scripts.
Los CLI, (comand line interface), existen para diversos programas y sistemas operativos, para diversos hardwares, y con diferentes funcionalidades, son usados por programadores  y administradores de sistema como herramienta primaria de trabajo especialmente en sistemas operativos basados en unix.
Ejemplos de interacción por CLI
Programa
comando
Tipo de programa
Bash
Is
Shell de unix
CMD
Dir
Shell de Windows
MATLAB
Dir
Proceso matricial
QUAHE
/dir
Juegos pcs
PYTHON SHELL
Os.listdir (¨.¨)
Python lenguaje de alto nivel

Programa ejecutable, en informática, programa que ha sido traducido a código máquina en un formato que puede cargarse en la memoria y ejecutarse. Sin embargo, en los lenguajes interpretados puede referirse simplemente al código fuente en su formato apropiado. La mayoría de los programas ejecutables en MS-DOS tiene la extensión de nombre de archivo EXE; si el programa ocupa menos de 64 K puede tener la extensión COM. Para ejecutar el programa, el usuario sólo tiene que escribir el nombre del archivo (sin la extensión) junto al símbolo del sistema y, a continuación, presionar la tecla Intro. El usuario no tiene que modificar el programa en modo alguno para poder ejecutarlo. Las aplicaciones como los programas de procesamiento de textos son programas ejecutables.

Editor de textos

Editor de textos
Son programas que permiten crear  y modificar archivos digitales compuestos por textos sin formatos conocido como texto plano.
Funciones: marcar región búsqueda y reemplazo, copiar, cortar y pegar, formatear, deshacer y  rehacer, importar, filtros, acceso remoto
Procesadores de textos
Es una aplicación que permite la realización modificación, almacenamiento e impresión de cualquier tipo escrito de manera flexible y rápida.
Nos brinda una amplia gama de posibilidades y funcionalidades como  tipográficas. Idiomáticas u organizativas como regla general todos pueden trabajar con distintos tipos y tamaños de letra y formato de párrafo y efecto artísticos; además de brindar la posibilidad de poner imágenes u objetos gráficos dentro del texto.
Pueden ser guardados en forma de archivos llamados documentos así como impresos a través de los diferentes, medios. También incorporan correctos de ortografía.

Un procesador de texto es una aplicación informática que permite crear y editar documentos de texto en una computadora. Se trata de un software de múltiples funcionalidades para la redacción, con diferentes tipografías, tamaños de letra, colores, tipos de párrafos, efectos artísticos y otras opciones.

Los procesadores de texto cumplen con una función similar a la que cumplían las máquinas de escribir hace algunas décadas, aunque mucho más completa y compleja. En la máquina de escribir, por ejemplo, cada letra tipeada por el usuario era impresa de forma inmediata en el papel, lo que imposibilitaba la posibilidad de borrar.
Con un procesador de texto, en cambio, es posible borrar y editar el contenido en todo momento ya que su funcionalidad básica se realiza sobre la pantalla. Una vez que la tarea de redacción ya está completada, el usuario tiene la opción de guardar el documento en un soporte informático (ya sea en el disco rígido de su computadora, en Internet o en CD) o de imprimir el material.
Otra opción que brindan los procesadores de texto es la utilización de un corrector ortográfico (una aplicación que detecta las faltas ortográficas y sugiere las correcciones necesarias) o de un diccionario de sinónimos (que recomienda palabras alternativas a las escritas sin que se altere el significado del texto).
Los procesadores de texto también permiten intercalar imágenes y distintos tipos de gráficos dentro del texto, lo que permite crear documentos más avanzados al no limitarse a las palabras escritas.
Microsoft Word, WordPerfect y OpenOffice.org Writer son algunos de los procesadores de texto más populares.