Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Introducción
Para representar una algoritmo se debe utilizar algún método que permita independizar
dicho algoritmo del lenguaje de programación elegido. Ello permitirá que un algoritmo
pueda ser codificado inmediatamente en cualquier lenguaje. Las herramientas utilizadas
comúnmente para diseñar algoritmos son:
• Pseudocodigo
• Diagrama de Flujo.
• Método Warnier
• Método Jackson
• Método Bertini
• Método Tabourier
3°METODOLOGIA
Diseño: "El proceso de preparar programas para una computadora digital tiene un atractivo
especial, no sólo porque puede ser recompensado económica y científicamente, sino
también porque puede ser una experiencia estética como la poesía y la música." Haciendo
uso de alternativas de solución como lo son diagramas de flujo y pseudocódigo se indican
los pasos que deberá seguir el algoritmo para obtener la solución del problema.
Diseño estructural
de manera que éste resista con las demandas impuestas con el mínimo costo posible
no es una labor sencilla, debido a que las variables que se relacionan con el diseño
son: la geometría, la topología, los perfiles comerciales para las barras y las
diseños cercanos a óptimos, sin embargo, el usuario de dichos métodos tiene que
tratar con metodologías complejas y que necesitan de una gran cantidad de ajustes
Lenguaje
Medio de comunicación entre los seres humanos a través de signos orales y escritos que
poseen un significado. También podría decirse que es cualquier procedimiento que sirve
para comunicarse, representado mediante símbolos y caracteres específicos
Lenguajes De Programación
Son los lenguajes utilizados para escribir programas de computadoras que puedan ser
entendidos por ellas.
- Máquina
- Alto nivel
Lenguaje Máquina
una ubicación del chip de memoria puede tener el siguiente formato: 11001010 00010111
11110101 00101011.
La programación en lenguaje máquina es una tarea tan tediosa y consume tanto tiempo que
muy raras veces lo que se ahorra en la ejecución del programa justifica los días o semanas
que se han necesitado para escribir el mismo.
(Ensamblador)
Estos lenguajes dan a cada instrucción un mnemónico, como por ejemplo STORE, ADD o
JUMP. Los lenguajes de bajo nivel permiten crear programas muy rápidos, pero que son a
menudo difíciles de aprender. Esta abstracción da como resultado un lenguaje de muy bajo
nivel que es específico de cada microprocesador:
El Lenguaje Ensamblador
.Al asignar un código mnemotécnico (por lo general de tres letras) a cada comando en
lenguaje máquina, es posible escribir y depurar o eliminar los errores lógicos y de datos en
los programas escritos en lenguaje ensamblador, empleando para ello sólo una fracción del
tiempo necesario para programar en lenguaje máquina.
Sin embargo, el lenguaje ensamblador puede utilizarse con un solo tipo de chip de CPU o
microprocesador, por lo que los programas escritos en un bajo nivel son prácticamente
específicos para cada procesador.
Si se quiere ejecutar el programa en otra máquina con otra tecnología, será necesario
rescribir el programa desde el principio.
Los llamados lenguajes de alto nivel son los que se emplean con mayor frecuencia como
lenguajes de programación, porque permiten expresar los algoritmos de una manera y con
un estilo fácilmente reconocible por parte de diversos programadores y usuarios; debido a
que están formados por elementos de lenguajes naturales, como el inglés utilizando
términos del tipo LIST, PRINT u OPEN como comandos.
En Basic, el lenguaje de alto nivel más conocido, los comandos se introducen desde el
teclado, desde un programa residente en la memoria o desde un dispositivo de
almacenamiento, y son interceptados por un programa que los traduce a instrucciones en
lenguaje máquina.
A este grupo pertenecen los lenguajes más conocidos, tales como el APL, FORTRAN,
PASCAL, COBOL, LISP, PROLOG, C, ADA, PL/I.
Sin embargo, tanto los lenguajes de alto nivel como los de bajo nivel, no son entendibles
directamente por la máquina, sino que necesitan ser traducidos a instrucciones en lenguaje
máquina que entiendan las computadoras por lo que es necesario disponer de una interfase
con el lenguaje máquina para que el programa sea ejecutable. Al respecto existen dos tipos
fundamentales de interfase, que son:
a) Compiladores
b) Intérpretes
Un compilador es:
De esta manera traduce un programa íntegro a lenguaje máquina antes de su ejecución, por
lo cual se ejecutan con tanta rapidez como si hubiesen sido escritos directamente en
lenguaje máquina.
El compilador es el más eficaz para la mayor parte de las máquinas, puesto que presenta la
ventaja de de que cada una de las sentencias del programa es interpretada y traducida al
lenguaje máquina solo una vez.
El código objeto resultante es un programa rápido y listo para funcionar, pero que puede
hacer que falle el ordenador si no está bien diseñado.
Un intérprete es:
Es Un traductor pero más lento que los compiladores ya que no producen un código objeto,
sino que recorren el código fuente una línea cada vez. Cada línea se traduce a código
máquina y se ejecuta. Cuando la línea se lee por segunda vez, como en el caso de los
programas en que se reutilizan partes del código, debe compilarse de nuevo. Aunque este
proceso es más lento, es menos susceptible de provocar fallos en la computadora
ALGORITMO
Un algoritmo es una serie de pasos lógicos para realizar una acción, programa o tarea ya
que es el primer paso para realizar un programa.
Preciso
Definido
Finito
Los algoritmos se pueden expresar por fórmulas, diagramas de flujo, y pseudocódigos. Ésta
última representación es la más utilizada en lenguajes estructurados como Turbo Pascal.
La serie de pasos que realizamos en nuestra vida diaria para realizar las diferentes tareas y
actividades comunes, desde los pasos al levantarnos, así como ir de compras, etc.
Cabe recordar que el conjunto de todas las operaciones a realizar, y el orden en el que
deben efectuarse, se le denomina algoritmo.
Así que el lenguaje algorítmico es aquel por medio del cual se realiza un análisis previo del
problema a resolver y encontrar un método que permita resolverlo.
aplicaciones individuales. Los lenguajes de programación actuales son los conocidos como
Lenguajes visuales, como por ejemplo Visual Fox, Visual Basic, Visual C.
Definición De Problemas
Con el fin de resolver un problema utilizando un sistema de cómputo, debe seguirse una
serie de pasos que permiten avanzar por etapas bien definidas hacia la solución y ejecución
de la misma
Para poder definir con precisión el problema se requiere que las especificaciones de entrada
y salida sean descritas con detalle ya que esto es un requisito para lograr una solución
eficaz; por lo que es conveniente hacerse las siguientes preguntas:
Una vez que el problema ha sido definido y comprendido, deben analizarse los siguientes
aspectos:
3.- Herramientas a nuestro alcance para manipular los datos y alcanzar un resultado.
Diseño De La Solución
Como todos sabemos, una computadora no tiene capacidad para solucionar problemas más
que cuando se le proporcionan los sucesivos pasos a realizar, esto se refiere a la obtención
de un algoritmo que resuelva adecuadamente el problema.
Los problemas complejos se pueden resolver más eficazmente por la computadora cuando
se dividen en subproblemas que sean más fáciles de solucionar.
Codificación
Prueba y Depuración
1.- Errores de compilación. Se producen normalmente por un uso incorrecto de las reglas
del lenguaje de programación y suelen ser errores de sintaxis, por lo tanto la computadora
no puede comprender la instrucción, y obviamente no se obtendrá el programa objeto, y el
compilador imprimirá una lista de todos los errores encontrados durante la compilación.
2.- Errores de ejecución. Estos errores se producen por instrucciones que las
computadoras pueden comprender, pero no ejecutar. Ejemplos de éstos son: una división
por cero, y raíces cuadradas de números negativos; por lo que en este caso se detiene la
ejecución del programa y se imprime un mensaje de error.
3.- Errores lógicos. Se producen en la lógica del programa y la fuente del error suele ser el
diseño del algoritmo. Estos errores son los más difíciles de detectar, ya que el programa
puede funcionar y no producir errores de compilación ni ejecución, y solo puede detectarse
cuando se advierte un error por la obtención de resultados incorrectos.
En este caso se debe volver a la fase del diseño del algoritmo, modificarlo, cambiar el
programa fuente, compilar y ejecutar una vez más.
Documentación
Programas pobremente documentados son difíciles de leer, más difíciles de depurar y casi
imposibles de mantener y modificar. Por ello la importancia de la documentación, sin la
documentación es imposible corregir errores futuros o bien cambiar el programa
Mantenimiento
Por ello la documentación es sin duda muy importante para poder llevar a cabo el
mantenimiento.
Unidad I
COMPILACIÓN
Código
Fuente
Programa
Ejecutable
Código objeto
Codificación
Diseño de la solución
Prueba y depuración
Mantenimiento
Definición de un problema
Diseño
Del
Algoritmo
Resolución de un problema
TRANSCRIPCION
Se realiza la:
Para realizar la conversión del algoritmo en programa, se deben sustituir las palabras
reservadas en español por sus homónimos en inglés, (hablando de un lenguaje de alto nivel)
y las operaciones, instrucciones indicadas en lenguaje natural.
CODIFICACIÓN
COMPILACIÓN
PROGRAMA FUENTE
PROGRAMA OBJETO
PROGRAMA EJECUTABLE
INTERNA
Esta documentación son los comentarios o mensajes que facilitan el entendimiento del
proceso.
EXTERNA