Você está na página 1de 17

ELABORACION DE UN PROGRAMA COMPUTACIONAL

CAMILO ANDRES PIEROS BUITRAGO


HAROLD GARCIA VARGAS
FELIPE JIMENEZ CASTRO
ANGIE REY CALDERN




ING. HECTOR HUGO HERRERA TORRES




UNIVERSIDAD COOPERATIVA DE COLOMBIA
FACULTAD DE INGENIERA CIVIL
MECANICA DE FLUIDOS
VILLAVICENCIO META
2014
INTRODUCCION

El presente trabajo contiene todo el procedimiento que se debe seguir para la
elaboracin de un programa de computador, como por ejemplo el paquete office,
creado por la multinacional Microsoft ofreciendo herramientas para trabajar
organizadamente llevando documentacin digital y realizando todo tipo de
actividades desde el ordenador.
El objetivo de la actividad es adquirir el conocimiento sobre los programas de
computador y como se crean, mediante una consulta sobre el procedimiento y
significado que tiene la elaboracin de ellos, los algoritmos que son una parte
fundamental en el proceso de fabricacin de un programa se llev a la practica
con un pequeo ejemplo de cmo calcular el caudal de un rio, con el fin de
afianzar ideas con respecto a las pautas que se deben seguir en la ejecucin del
programa computacional.
Al realizar este trabajo se evidencia como mediante programas tecnolgicos se ha
llevado a un mejor nivel la educacin y la facilidad para impartirla ya que brindan
herramientas inmediatas para el estudiante y su fcil interaccin en la sociedad.








OBJETIVO GENERAL

Aprender los aspectos bsicos para la creacin de un programa computacional,
donde se empleen los algoritmos, utilizando las herramientas y lenguajes de
programacin moderna.




OBJETIVOS ESPECIFICOS

Desarrollar algoritmos para la resolucin de problemas previamente
conceptualizados.

Identificar y analizar, el uso de lenguajes de programacin y herramientas
computacionales.














ELABORACIN DE UN PROGRAMA DE COMPUTACIN

Se conoce como programacin al proceso para convertir especificaciones
generales de un sistema en instrucciones utilizables por la mquina, que
produzcan los resultados deseados. A esto tambin se le conoce como Desarrollo
de Software.
CODIFICACIN DE PROGRAMAS
Es la generacin real del programa con un lenguaje de programacin. En esta
etapa se hace uso de la lgica que desarroll en el paso del diseo del programa
para efectivamente generar un programa. Se debe seleccionar el lenguaje
apropiado para resolver el problema.

1. LENGUAJE DE PROGRAMACION:
Es un conjunto de smbolos junto a un conjunto de reglas para combinar dichos
smbolos que se usan para expresar programas. Constan de un lxico, una
sintaxis y una semntica.
Lxico: Conjunto de smbolos permitidos o vocabulario
Sintaxis: Reglas que indican cmo realizar las construcciones del lenguaje
Semntica: Reglas que permiten determinar el significado de cualquier
construccin del lenguaje.




1.1. Tipos

Atendiendo al nmero de instrucciones necesarias para realizar una tarea
especfica podemos clasificar los lenguajes informticos en dos grandes bloques:

Bajo Nivel
Alto Nivel

1.1.1. Bajo Nivel

Es el tipo de lenguaje que cualquier computadora es capaz de entender. Se dice
que los programas escritos en forma de ceros y unos estn en lenguaje de
mquina, porque esa es la versin del programa que la computadora realmente
lee y sigue.

1.1.2. alto Nivel

Son lenguajes de programacin que se asemejan a las lenguas humanas usando
palabras y frases fciles de entender.
En un lenguaje de bajo nivel cada instruccin corresponde a una accin ejecutable
por el ordenador, mientras que en los lenguajes de alto nivel una instruccin suele
corresponder a varias acciones.


1.2. SEGN LA FORMA DE EJECUCIN

1.2.1. Lenguajes compilados
Los compiladores son aquellos cuya funcin es traducir un programa escrito en un
determinado lenguaje a un idioma que la computadora entienda (lenguaje mquina
con cdigo binario).

Al usar un lenguaje compilado (como lo son los lenguajes del popular Visual
Studio de Microsoft), el programa desarrollado nunca se ejecuta mientras haya
errores, sino hasta que luego de haber compilado el programa, ya no aparecen
errores en el cdigo.

1.2.2. Lenguajes interpretados

Se puede tambin utilizar una alternativa diferente de los compiladores para
traducir lenguajes de alto nivel. En vez de traducir el programa fuente y grabar en
forma permanente el cdigo objeto que se produce durante la corrida de
compilacin para utilizarlo en una corrida de produccin futura, el programador
slo carga el programa fuente en la computadora junto con los datos que se van a
procesar.






2. ALGORITMOS

2.1. Generalidades

El programador de computadoras es ante 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 (o sea en un
orden establecido). A la metodologa necesaria para resolver problemas mediante
programas se denomina Metodologa de la Programacin. El eje central de esta
metodologa es el concepto de algoritmo.
Un algoritmo es un mtodo para resolver un problema.

2.1.1. Pasos que se deben seguir en la elaboracin de algoritmos:

Leer el enunciado del problema cuantas veces sea necesario asta
entenderlo completamente.

Determinar claramente con que datos de entrada se cuenta para la solucin
del problema.

Aclarar y determinar la informacin o resultados que se solicitan.



a) informacin intermedia
b) informacin final.
Definir que calculo y comparaciones se necesitan para llegar al resultado
final.
Clculos y comparaciones intermedia.
Clculos y comparacin final.
Generen cuenta toda clase de condiciones y restricciones para la solucin
del problema.
La falta de anlisis de algunos de estos trminos causara problema en el
trascurso del desarrollo del algoritmo.

2.2. Anlisis de Algoritmos

Un algoritmo es mejor cuantos menos recursos consuma.
Criterio empresarial: Maximizar la eficiencia; y se encarga de los siguientes
anlisis:
Eficiencia: Relacin entre los recursos consumidos y los productos conseguidos.
Recursos consumidos:
Tiempo de ejecucin.
Memoria principal:
Entradas/salidas a disco.
Comunicaciones, procesadores, etc.
Lo que se consigue:
Resolver un problema de forma exacta, forma aproximada o algunos casos.
Recursos consumidos (Analizar los recursos de hardware que consumira)

2.3. Diseo de Algoritmos.

En la etapa de diseo se determina como hace el programa la tarea solicitada. La
resolucin de un problema complejo se realiza dividiendo el problema en sub
problemas y a continuacin dividir estos sub problemas en otros de nivel ms bajo,
hasta que pueda ser implementada una solucin en la computadora. Este mtodo
se conoce tcnicamente como diseo descendente o modular. El proceso de
romper el problema en cada etapa y expresar cada paso en forma ms detallada
se denomina refinamiento sucesivo.
Los programas estructurados de esta forma se dice que tienen un diseo modular
y el mtodo de romper el programa en mdulos ms pequeo se llama
Programacin Modular. Los mdulos pueden ser planeados, codificados,
comprobados y depurados independientemente (incluso por diferentes
programadores) y a continuacin combinarlos entre s. El proceso implica la
ejecucin de los siguientes pasos hasta que el programa se termina:

Programar modulo.
Comprobar el modulo.
Si es necesario, depurar el modulo.
Combinar el modulo con los mdulos anteriores.
El proceso que convierte los resultados del anlisis del problema en un
diseo modular con refinamiento sucesivo que permitan una posterior
traduccin al Lenguaje se denomina diseo de algoritmo.
El diseo del algoritmo es independiente del lenguaje de programacin en
el que se vaya a codificar posteriormente.
El acto de disear un algoritmo puede considerarse como una tarea que
difcilmente podr ser del todo automatizada.

Todo problema algortmico es un reto para su diseador, algunos resultan
inmediatos de resolver, otros son bastante complejos. La investigacin en esta
rea ha permitido descubrir un conjunto de mtodos o esquemas de diseo hacia
los cuales puede orientarse la realizacin de muchos algoritmos.

2.4. Caractersticas de los Algoritmos

Las caractersticas fundamentales que debe cumplir todo algoritmo son:

Un algoritmo debe ser preciso e indicar el orden de realizacin de cada
paso.
Un algoritmo debe estar definido. Si se sigue un algoritmo dos veces, se
debe obtener el mismo resultado cada vez.
Un algoritmo debe ser finito. Si se sigue un algoritmo se debe terminar en
algn momento; o sea, debe tener un numero finito de pasos.
La definicin de un algoritmo debe definir tres partes: Entrada, Proceso y
Salida.





PROBLEMA: Cambiar la rueda pinchada de un automvil teniendo un gato
mecnico en buen estado, una rueda de reemplazo y una llave inglesa.

ALGORITMO:

Inicio
PASO 1. Aflojar los tornillos de la rueda pinchada con la llave inglesa.
PASO 2. Ubicar el gato mecnico en su sitio.
PASO 3. Levantar el gato hasta que la rueda pinchada pueda girar libremente.
PASO 4. Quitar los tornillos y la rueda pinchada.
PASO 5. Poner rueda de repuesto y los tornillos.
PASO 6. Bajar el gato hasta que se pueda liberar.
PASO 7. Sacar el gato de su sitio.
PASO 8. Apretar los tornillos con la llave inglesa.
Fin







3. DIAGRAMAS DE FLUJO DE DATOS (DFD)

3.1. Definicin
Es la representacin grfica de flujo de un algoritmo o de secuencia rutinaria. Se
basan en la utilizacin de diversos smbolos para representar operaciones
especficas. Se les llama diagramas de flujo porque los smbolos utilizados se
conectan por medio de flechas para indicar la secuencia de la operacin.

3.2. Caractersticas

En los diagramas de flujo se presuponen los siguientes aspectos:

Existe siempre un camino que permite llegar a una solucin (finalizacin del
algoritmo).
Existe un nico inicio del proceso.
Existe un nico punto de fin para el proceso de flujo (salvo del rombo que
indica una comparacin con dos caminos posibles).

3.3. Tipos de Diagrama de Flujo de Datos.

Formato vertical: En l el flujo o la secuencia de las operaciones, va de arriba
hacia abajo. Es una lista ordenada de las operaciones de un proceso con toda la
informacin que se considere necesaria, segn su propsito.
Formato horizontal: En l, el flujo o la secuencia de las operaciones, va de
izquierda a derecha.
Formato panormico: El proceso entero est representado en una sola carta y
puede apreciarse de una sola mirada mucho ms rpido que leyendo el texto, lo
que facilita su comprensin, aun para personas no familiarizadas. Registra no solo
en lnea vertical, sino tambin horizontal, distintas acciones simultneas y la
participacin de ms de un puesto o departamento que el formato vertical no
registra.

Formato Arquitectnico: Describe el itinerario de ruta de una forma o persona
sobre el plano arquitectnico del rea de trabajo. El primero de los flujogramas es
eminentemente descriptivo, mientras que los utilizados son fundamentalmente
representativos.

4. Compilador

4.1. Compilador o Traductor

En el caso de que el lenguaje fuente sea un lenguaje de programacin de alto
nivel y el objeto sea un lenguaje de bajo nivel (ensamblador o cdigo de mquina),
a dicho traductor se le denomina compilador. Un ensamblador es un compilador
cuyo lenguaje fuente es el lenguaje ensamblador. Un intrprete no genera un
programa equivalente, sino que toma una sentencia del programa fuente en un
lenguaje de alto nivel y la traduce al cdigo equivalente y al mismo tiempo lo
ejecuta.



5. ELABORACIN DE PROGRAMAS.

Los programas son los bloques de construccin de los sistemas de informacin.
Cuando se hacen productos de software, los programadores siguen un proceso
que se parece al ciclo de vida de los sistemas de informacin completos.

5.1. Anlisis de las necesidades.

Este anlisis es la etapa donde se identifica y entiende una necesidad o problema.
En la primera etapa el programador revisa el diseo del programa para ver lo que
el usuario necesita para hacer una interfaz y el punto de inicio, y adems lo que el
usuario necesita que el programa realice.

5.2. Diseo del programa.

El diseo del programa es la fase done el programador comienza a aproximarse a
la lgica que utilizaran cuando empiece la creacin de cdigo real.

5.3. Desarrollo.
El desarrollo o codificacin se relaciona con la escritura y pruebas de cdigo
fuente. La fuente de desarrollo del software es parecida a la fase de desarrollo del
ciclo de vida de los sistemas, pero en lugar de determinar el diseo general del
sistema, el programador escribe el cdigo que implementa los requerimientos del
usuario.
5.4. Mantenimiento.

El mantenimiento comienza tan pronto como el programa ha sido instalado. El
trabajo en los productos contina por distintas razones. Es probable que algunos
errores menores no se hayan reparado en el momento en que el programa fue
terminado.
















PROBLEMA: Medicin de la cantidad de agua que pasa por un cao teniendo un
cronometro, una bola plstica, una vara para medir profundidad y cinta mtrica.

ALGORITMO
1. Dirigirse hacia el arroyo.
2. Marcar una seccin (A,B) de la corriente.
3. Colocar la bola plstica en el punto A.
4. Usando el cronometro, medir el tiempo que tarda de A B.
5. Con la formula

calcular la velocidad del flujo.


6. Con la cinta mtrica medir la anchura de la corriente.
7. Atar una cuerda de un lado del cao al otro.
8. Dividir la cuerda en secciones iguales y marcarlas.
9. Utilizando la vara, medir la profundidad en cada una de las marcas.
10. Calcula la profundidad promedio de la corriente.
11. Sumar todas las mediciones.
12. Dividir el resultado de la suma por la cantidad de secciones medidas.
13. Multiplicar la anchura por la profundidad promedio.
14. Obtendremos as el rea en


15. Utilizando los clculos obtenidos procesar la ecuacin.
16. La velocidad del flujo por el rea de la seccin del cao.
17. As obtendremos la cantidad de agua que pasa por el cao.

FIN




CONCLUSIN

1. Al realizar este trabajo nos llenamos de conocimientos bsicos sobre la
programacin as como tambin del proceso que conlleva el Desarrollo de
Software, de los elementos que en ella entran y de los pasos que son
necesarios a la hora de la elaboracin de Software.
2. Conocimiento, desarrollo, empleamiento y ayuda a la solucin de
problemas en la vida cotidiana mediante algoritmos o procesos paso a
paso.