Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
PRUEBA DE ESCRITORIO
Para cerciorarnos de que el diagrama (y/o el pseudocdigo) esta bien, y,
para garantizar que el programa que codifiquemos luego tambin funcione
correctamente, es conveniente someterlo a una Prueba de Escritorio. Esta
prueba consiste en que damos diferentes datos de entrada al programa y
seguimos la secuencia indicada en el diagrama, hasta obtener los
resultados.
PROGRAMACIN
A. CODIFICACIN
Consiste en escribir la solucin del problema (de acuerdo al
pseudocodigo); en una serie de instrucciones detalladas en
un cdigo reconocible por la computadora; es decir un lenguaje de
programacin (ya sea de bajo o alto nivel), a esta serie de
instrucciones se le conoce como PROGRAMA.
B. COMPILACIN
Utilizamos ahora un programa de computador llamado Compilador o
Traductor, el cual analiza todo el programa fuente y detecta errores
de sintaxis ocasionados por fallas en la codificacin o en la
transcripcin. Las fallas de lgica que pueda tener nuestro programa
fuente no son detectadas por el compilador. Cuando no hay errores
graves en la compilacin, el compilador traduce cada instruccin del
programa fuente a instrucciones propias de la mquina (Lenguaje de
Maquina), creando el Programa Objeto.
Algunos computadores utilizan Interpretadores, (Generalmente para
el Lenguaje Basic), en reemplazo de programas compiladores. La
diferencia consiste en que el interpretador recibe, desde una
terminal, slo una instruccin a la vez, la analiza y, si est bien, la
convierte al formato propio de la mquina. Si la instruccin tiene
algn error, el interpretador llama la atencin de la persona para que
corrija dicha instruccin.
Como resultado de la corrida del compilador, podemos obtener
varios listados:
*Listado del programa fuente
*Listado de los errores detectados
*Listado de campos utilizados, etc.
Los errores los debemos corregir sobre el mismo programa fuente,
ya sea reemplazando las tarjetas mal perforadas o regrabando en el
disco flexible o en el disco duro. Este paso de la compilacin lo
repetimos hasta eliminar todos los errores y obtener el programa
ejecutable.
-Externa: Est integrada por los siguientes elementos: Descripcin del problema,
nombre del autor, diagrama de flujo y/o pseudocodigo, listas de variables y
constantes, y codificacin del programa, esto con la finalidad de permitir su
posterior adecuacin a los cambios.
3. A un smbolo de decisin pueden llegarle varias lneas, pero slo saldrn dos
(Si o No, Verdadero o Falso).
- El smbolo de Inicio o Final del Diagrama puedes ser un cuadrado con los
bordes redondeados o una elipse.
Queremos hacer un programa informtico que nos sume dos nmero y nos de el
resultado en pantalla.
Ves que es muy sencillo, hay que ir poniendo los pasos lgicos que se deben
seguir para realizar la tarea o el programa.
En el ejercicio tenemos el inicio y el fin, una entrada de datos, para meter los 2
nmeros, una operacin a realizar, la suma, y un resultado a mostrar. Cada uno
de esos pasos con su smbolo correspondiente en el diagrama.
Bueno vamos hacer uno que nos muestre el resultado del rea de un tringulo en
pantalla.
Como ves, en este ni siquiera hemos puesto las operaciones dentro de los
smbolos, ya que, con la forma del smbolo ya se entiende.
Lo primero es poner a cero la suma y dar el primer nmero a sumar que ser el 0.
Elementos de un algoritmo
Sentencias
Una sentencia es cada uno de los pasos que componen un algoritmo. Hay que
distinguir entre:
1. sentencias simples: son una nica instruccin;
2. sentencias de control: estn conformadas por varias otras sentencias, que a
su vez pueden ser simples o compuestas.
Las sentencias simples son realizadas secuencialmente, una despus de la otra.
Ms abajo veremos los dos tipos de sentencias de control: los condicionales y los
ciclos.
Expresiones y variables
Una expresin es una combinacin de valores y operaciones que son evaluados
durante la ejecucin del algoritmo para obtener un resultado.
Por ejemplo, 2 + 3 es una expresin aritmtica que, al ser evaluada, siempre
entrega el valor 5 como resultado. En esta expresin, 2 y 3 son valores
literales y + es el operador de adicin.
En el algoritmo para resolver la ecuacin cuadrtica aparece la
expresin b 4ac, cuyo resultado depende de cules son los valores
de a, b y c al momento de la evaluacin. A diferencia de los valores
literales, a, b y cson variables. Una variable es un nombre que es asociado a un
valor, para poder usarlo de manera independiente al valor especfico que
representa.
Las diferentes partes de una expresin tambin son expresiones por s solas. En
el ejemplo, b, b, 4ac y 4 son expresiones.
Asignaciones
Cuando una expresin es evaluada, generalmente es necesario asociar el
resultado a una variable para poder referirse a l en sentencias posteriores. Es lo
que hacemos en la sentencia 2 del algoritmo de la ecuacin cuadrtica, cuando
calculamos el discriminante y lo asociamos al nombre .
La accin de guardar un valor y ponerle un nombre se representa como una
sentencia simple llamada asignacin,
Una asignacin se representa as:
variable = expresin
La asignacin del ejemplo sera:
= b 4ac
La asignacin debe interpretarse as:
1. primero la expresin a la derecha del signo = es evaluada, utilizando los
valores que tienen las variables a, b y c en ese momento;
2. una vez obtenido el resultado, el valor de la variable a la izquierda del
signo = es reemplazado por ese resultado.
Bajo esta interpretacin, es perfectamente posible una asignacin como sta:
i=i+1
Primero la expresin i + 1 es evaluada, entregando como resultado el sucesor del
valor actual de i. A continuacin, la variable i toma el nuevo valor. Por ejemplo,
si i tiene el valor 15, despus de la asignacin tendr el valor 16.
Esto no significa que 15 = 16. Una asignacin no es una igualdad matemtica o
una ecuacin.
Condicionales
A veces un algoritmo debe ejecutar sentencias diferentes dependiendo de si una
condicin se cumple o no. Es lo que hacemos en el paso 3 del ejemplo: decidimos
que la ecuacin no tiene soluciones solamente cuando se cumple que < 0. Esto
se llama un condicional.
Un condicional es una sentencia compuesta.
La condicin que determina qu ejecutar es una expresin, cuyo valor debe ser
verdadero o falso.
Ciclos
Un ciclo ocurre cuando un algoritmo ejecuta una serie de instrucciones varias
veces.
Como un algoritmo no puede quedarse pegado, un ciclo debe tener adems
una condicin de trmino.
Cada ejecucin de un ciclo se llama iteracin.
El ejemplo de la ecuacin cuadrtica no tiene ciclos.
Entrada
Cuando un algoritmo necesita recibir un dato, lo hace mediante una sentencia de
entrada, que se encarga de poner el valor en la variable correspondiente.
Por ahora, para referirnos a la sentencia de entrada lo haremos simplemente
como:
Leer variable
Durante la ejecucin, esto significa que el dato es entregado por alguien y queda
guardado en la variable.
En el ejemplo, la entrada ocurre en el paso 1, y puede ser representada as:
Leer a
Leer b
Leer c
Salida
Una vez que el algoritmo ha resuelto el problema para el que fue diseado, debe
entregar sus resultados como un mensaje. Por ahora, lo representaremos as:
Escribir mensaje
Si el mensaje es un texto literal, va entre comillas. Si es una variable, va slo el
nombre de la variable.
En el ejemplo, cuando no existen soluciones, la salida puede ser representada as:
Escribir 'No hay soluciones'
Cuando existe una nica solucin, se puede incluirla en el mensaje:
Escribir 'La solucin nica es ', x
Las notaciones que hemos introducido son tiles para describir un algoritmo de
manera estructurada.
Cuando usamos esta notacin de manera informal, se denomina pseudocdigo.
En este caso, es posible tomarse ciertas libertades que hacen que el algoritmo
ms fcil de entender.
Cuando escribamos programas de verdad, cada uno de estos elementos deber
ser representado de manera rigurosa usando cdigo en el lenguaje Fortran.