Академический Документы
Профессиональный Документы
Культура Документы
4.- Codificacin
La codificacin es la operacin de escribir la solucin del problema (de acuerdo a la lgica del diagrama de flujo o pseudocdigo), en una serie de instrucciones detalladas, en un cdigo reconocible por la computadora, la serie de instrucciones detalladas se le conoce como cdigo fuente, el cual se escribe en un lenguaje de programacin o lenguaje de alto nivel.
7.- Documentacin
Es la gua o comunicacin escrita es sus variadas formas, ya sea en enunciados, procedimientos, dibujos o diagramas. A menudo un programa escrito por una persona, es usado por otra. Por ello la documentacin sirve para ayudar a comprender o usar un programa o para facilitar futuras modificaciones (mantenimiento).
La documentacin se divide en tres partes: Documentacin Interna: Son los comentarios o mensaje que se aaden al cdigo fuente para hacer ms claro el entendimiento de un proceso. Documentacin Externa: Se define en un documento escrito los siguientes puntos: Descripcin del Problema Nombre del Autor Algoritmo (diagrama de flujo o pseudocdigo) Diccionario de Datos Cdigo Fuente (programa) Manual del Usuario: Describe paso a paso la manera cmo funciona el programa, con el fin de que el usuario obtenga el resultado deseado.
8.- Mantenimiento
Se lleva acabo despus de terminado el programa, cuando se detecta que es necesario hacer algn cambio, ajuste o complementacin al programa para que siga trabajando de manera correcta. Para poder realizar este trabajo se requiere que el programa este correctamente documentado.
Bottom Up
El diseo ascendente se refiere a la identificacin de aquellos procesos que necesitan computarizarse con forme vayan apareciendo, su anlisis como sistema y su codificacin, o bien, la adquisicin de paquetes de software para satisfacer el problema inmediato. Cuando la programacin se realiza internamente y haciendo un enfoque ascendente, es difcil llegar a integrar los subsistemas al grado tal de que el desempeo global, sea fluido. Los problemas de integracin entre los subsistemas son sumamente costosos y muchos de ellos no se solucionan hasta que la programacin alcanza la fecha lmite para la integracin total del sistema. En esta fecha, ya se cuenta con muy poco tiempo, presupuesto o paciencia de los usuarios, como para corregir aquellas delicadas interfaces, que en un principio, se ignoran.
Aunque cada subsistema parece ofrecer lo que se requiere, cuando se contempla al sistema como una entidad global, adolece de ciertas limitaciones por haber tomado un enfoque ascendente. Uno de ellos es la duplicacin de esfuerzos para accesar el software y ms an al introducir los datos. Otro es, que se introducen al sistema muchos datos carentes de valor. Un tercero y tal vez el ms serio inconveniente del enfoque ascendente, es que los objetivos globales de la organizacin no fueron considerados y en consecuencia no se satisfacen.
2.3 Definicin de lenguajes algortmicos. 2.3.1 Elementos y reglas de la representacin grfica y manuscrita de los algoritmos.
PSEUDOCDIGO. El pseudocdigo o pseudolenguaje, son una serie de instrucciones en nuestro lenguaje natural (espaol, ingles, etc.) y expresiones que representan cada uno de los pasos que resuelven un problema especifico (algoritmo). Es la representacin narrativa de los pasos que debe seguir un algoritmo para dar solucin a un problema determinado. El pseudocdigo utiliza palabras que indican el proceso a realizar, por todo lo anterior es una tcnica NO GRFICA. Se considera un primer borrador, dado que el pseudocdigo tiene que traducirse posteriormente a un lenguaje de programacin. Cabe sealar que el pseudocdigo no puede ser ejecutado por una computadora. La forma en que se escribe un pseudocdigo es la siguiente: 1. Se escribe la palabra pseudocdigo seguida de dos puntos y a continuacin un nombre que describa de manera general el problema a resolver. 2. En caso de haber estructuras se describen en la seccin con este nombre, si no hay se pueden omitir. 3. En caso de haber funciones o mdulos se describen en la seccin con este nombre, si no hay se pueden omitir. 4. En caso de haber constantes se describen en la seccin con este nombre, si no hay se pueden omitir. 5. En caso de haber variables se describen en la seccin con este nombre, si no hay se pueden omitir. 6. Se colocan en orden las instrucciones y expresiones a ejecutar, las cuales deben de estar enumeradas, donde se debe respetar lo siguiente:
La primera instruccin es la palabra inicio. La ltima instruccin es la palabra fin. En caso de estar dentro de una sentencia de seleccin o dentro de una estructura cclica, utilizar una subnumeracin y una sangra. Indicar siempre el final de la estructura de seleccin o estructura cclica antes de continuar con la numeracin normal. A continuacin tenemos el ejemplo de un pseudocdigo, el cual no realiza nada especfico, pero se muestra la estructura que debe de tener.
Pseudocdigo: EJEMPLO
Funciones: F1 recibe en var1 un entero Estructuras: E1 con los campos Campo1 : entero Campo2 : entero
ROTULO O ENCABEZADO
DEFINICIN DE FUNCIONES
DEFINICIN DE ESTRUCTURAS
Constantes:
Const1= 50 Variables: Var3 : entero 1. Inicio 2. Escribir dame un nmero 3. Leer var3
DEFINICIN DE VARIABLES DEFINICIN DE CONSTANTES
4. si var3 == 10 entonces
Escribir hola si no Escribir adios fin si 5. escribir gracias 6. fin
SERIE DE PASOS Y EXPRESIONES A REALIZAR POR EL PROGRAMA, COMENZADO CON LA INSTRUCCIN INICIO Y TERMINANDO CON LA INSTRUCCIN FIN, TODAS ENUMERADAS Y SUBNUMERACIN DENTRO DE UNA ESTRUCTURA DE SELECCIN
En la seccin en la que se colocan los pasos y expresiones a realizar para resolver un problema especfico utilizamos para definir una tarea o proceso determinado las siguientes palabras:
Inicio, Fin. Indica el comienzo y trmino del algoritmo. Escribir. Muestra mensajes e informacin en el monitor. Imprimir. Datos y mensaje que son enviados a la impresora. Leer. Almacena un dato que es capturado desde el teclado en una variable. Guardar en... Indica el(los) dato(s) a guardar en una ubicacin especfica de un dispositivo de
almacenamiento secundario (disquete, disco duro, CD, etc.).
Llamar a... Indica que se debe de ejecutar a la funcin o mdulo que se est invocando. Si... entonces. Es una pregunta para una estructura de seleccin, donde si la respuesta es verdad se
realizan unas tareas especficas y cuando es falso se pueden realizar otras.
Fin si. Indica el trmino de la estructura condicional si...entonces. Casos para... / Fin casos. Indica las acciones a realizar cuando una variable puede tener uno de
varios posibles valores.
Hacer mientras... / fin mientras. Estructura cclica la cual indica un conjunto de instrucciones que
se deben de repetir mientras que la respuesta a la pregunta hacer mientras... sea verdadera.
Repetir / hasta... Estructura cclica la cual indica un conjunto de instrucciones que se deben de
repetir mientras que la respuesta a la pregunta hasta... sea falsa.
Hacer para... hasta ... / fin para. Estructura cclica la cual indica el nmero exacto de veces que un
conjunto de instrucciones que se deben de repetir.
//... Indica que es comentario, el cual solo sirve para documentar nuestra solucin puesto que no se
ejecuta ninguna instruccin.
Ocupa muy poco espacio en una hoja de papel Permite representar en forma fcil operaciones repetitivas complejas Es muy fcil pasar de pseudocdigo a un programa en algn lenguaje de programacin ya que solo basta con aprender cmo se maneja cierta instruccin en ese lenguaje.
Si se siguen las reglas se puede observar claramente los niveles que tiene cada operacin debido a la numeracin, subnumeracin y sangras. DIAGRAMA DE FLUJO. Un diagrama de flujo es la representacin grfica de un algoritmo. Tambin se puede decir que es la representacin detallada en Forma Grfica de cmo deben realizarse los pasos en la computadora para producir resultados. Esta representacin grfica se da cuando varios smbolos (que indican diferentes procesos en la computadora), se relacionan entre s mediante lneas que indican el orden en que se deben ejecutar los procesos. Nota. Estos procesos son casi los mismos que se detallaron en la tcnica no grfica (pseudocdigo), pero representados con smbolos. Los smbolos utilizados han sido normalizados por el instituto
norteamericano de normalizacin (ANSI). SMBOLO NOMBRE Terminador DESCRIPCIN Indica el comienzo o termino de nuestro algoritmo, para eso se debe de identificar con la palabra inicio fin. Dentro de el se coloca una expresin para que se ejecute. Dentro de este smbolo se declaran las funciones, mdulos, estructuras, constantes y variables a utilizar durante el algoritmo. DESCRIPCIN
Proceso
Datos
SMBOLO
NOMBRE
Indica que se recibe un dato desde el teclado y dentro de Entrada manual este se coloca la variable en donde se almacenar. Dentro de el se coloca el mensaje y datos que queremos aparezcan en el monitor. Dentro de el se coloca el mensaje y datos que queremos mandar a la impresora.
Pantalla
Impresora o documento
Indica el(los) dato(s) a guardar en una ubicacin especfica de Almacenamiento un dispositivo de almacenamiento secundario (disquete, disco duro, CD, etc.). Indica la ubicacin especfica de un dispositivo de almacenamiento secundario (disquete, disco duro, CD, etc.) desde el cual se va a leer informacin y en donde se almacenar temporalmente esta. Indica que se debe de ejecutar a la funcin o mdulo que esta escrita dentro de l.
Datos almacenados
Se utiliza para continuar la secuencia del algoritmo en otra Conector en la parte de la hoja. El conector misma pgina debe de estar en ambos lados y con el mismo nmero. Se utiliza para continuar la secuencia del algoritmo en otra pgina. El conector debe de estar en ambos lados y con el mismo nmero. DESCRIPCIN Se utiliza para plantear una pregunta y con la respuesta se optar por avanzar por solo uno de los caminos posibles.
SMBOLO
NOMBRE
Decisin
Flechas
Despus
datos.
del
smbolo
inicio,
se
colocan
todas
las
funciones,
Todas las lneas que conectan a dos smbolos deben de tener una
punta de flecha. Una flecha con doble sentido es incorrecta.
Se deben se usar solamente lneas de flujo horizontal y/o vertical. Se debe evitar el cruce de lneas utilizando los conectores. Se deben usar conectores solo cuando sea necesario. No deben quedar lneas de flujo sin conectar. Se deben trazar los smbolos de manera que se puedan leer de arriba
hacia abajo y de izquierda a derecha.
Todo
texto
escrito
dentro
de
un
smbolo
deber
ser
escrito
// Diagrama de flujo que evalua la edad inicio edad : entera cuanto aos tienes:
edad
F Eres Viejo
Edad < 50
V Eres Joven
DIAGRAMA ESTRUCTURADO N-S (NASSI-SCHNEIDERMAN). El diagrama estructurado Nassi-Scheneiderman es una mezcla de un diagrama de flujo con el pseudocdigo. Este diagrama se denomina as en honor a sus inventores. Se parece al diagrama de flujo ya que de manera visual podemos identificar el camino que se sigue para resolver un algoritmo, pero sin utilizar flechas, ya que todas las acciones se colocan en cajas contiguas. Se parece al pseudocdigo debido a que cada accin a realizar se escribe de igual manera pero dentro de las ya mencionadas cajas sin utilizar una numeracin la cual en ocasiones es difcil de realizar. Un buen diagrama N-S debe de cumplir con lo siguiente:
Difciles de entender cuando el problema se vuelve muy complejo Difciles de actualizar y cuando se tienen que modificar, la labor
se vuelve tediosa pues hay que redibujar las cajas que los componen.
Generalmente no caben en el ancho de una hoja. se necesitan hojas grandes para disearlos y aun as es muy
probable que no sea el espacio suficiente. Aunque cada una de las acciones a realizar se coloca dentro de una caja, las estructuras de seleccin y cclicas tienen una pequea variacin.
SMBOLO
Condicin
NOMBRE
Condicin
F V
DESCRIPCIN Es una pregunta, donde si la respuesta es verdad se realizan unas tareas especificas y cuando es falso se pueden realizar otras. Indica el conjunto de acciones que se deben de repetir hasta que la respuesta a la condicin sea verdadera.
Repetir hasta
Indica el conjunto de acciones que se deben de realizar Hacer mientras mientras que la respuesta a la condicin sea verdadera.
Condicin acciones
Hacer Para
continuacin
tenemos
un
ejemplo
de
cmo
se
debe
disear
un
diagrama N-S:
INICIO
Variables Peso: Real Escribir cuanto pesas? Leer Peso Peso > 80 Falso Escribir ESTAS FLACO Verdadero Escribir ESTAS GORDO
FIN
Los algoritmos ms sencillos de realizar son los que no toman decisiones, tan solo se dedican a realizar o ejecutar instruccin tras instruccin en el orden determinado. Estos secunciales, algoritmos en las que estn una representados accin por las sigue estructuras a otra en
(instruccin)
secuencia. Las tareas se suceden de tal modo que la salida de una es la entrada de la siguiente y as sucesivamente hasta el fin del proceso. De manera general un algoritmo con una estructura secuencial se representa de la siguiente forma en las tres diferentes tcnicas
algortmicas (el siguiente ejemplo no realiza nada en especfico, solo es de carcter ilustrativo):
// EJEMPLO. Inicio Pseudocdigo: EJEMPLO. 1. 2. 3. 4. 5. Inicio Accin 1 Accin 2 Accin 3 Fin Variables: // EJEMPLO. Inicio Variables: Accin 1 Accin 2 Accin 3 Fin Accin 1 Accin 2 Accin 3 Fin
En leer la
las
estructuras
secunciales,
se
encuentran
las
acciones
instrucciones de inicio y fin, escribir en monitor, imprimir en impresora, desde el teclado, ejecucin de guardar en una ubicacin especfica, para obtener un recuperar resultado desde una ubicacin especfica, llamar y ejecutar a una funcin o mdulo y expresiones aritmticas guardndolo en una variable. A continuacin vamos a realizar disear un algoritmo:
Realizar un algoritmo que calcule la edad de una persona a la cual solo se le solicitar el ao en que naci. Paso I. Analizar el problema. Cada uno de estos datos se debe de expresar en variables y no en frases largas. Salidas Entrada Constantes Procesos Ao_nac Edad Edad = Ao_act Ao_nac Ao_act Paso II. Disear El algoritmo PSEU DOC DI GO
Ejemplo 1.
Pseudocdigo: Edad personal Variables: Edad: entera // almacenar la edad del usuario Ao_nac: entera // guardar el ao en que naci
Ao_act: entera // Contendr el ao en que estamos 1. 2. 3. 4. 5. 6. Inicio Escribir En que ao naciste? // muestra el mensaje que esta entre comillas Leer Ao_nac // guarda el dato que es tecleado por el usuario en la variable Escribir En que ao estamos? Leer Ao_act Edad = Ao_act Ao_nac // realiza una operacin y almacena el resultado en // la variable de la izquierda de la expresin. 7. Escribir Tu edad actual es:, Edad // Cuando deseamos mostrar el contenido // de una variable, esta no debe de // estar entre comillas 8. Fin . DIAG RAM A D E F LU JO // Diagrama de Flujo: Edad personal Inicio // Declaracin de variables Edad : entera Ao_act : entera Ao_nac : entera en que ao naciste? // Guarda el dato que es tecleado por el usuario // en la variable Ao_nac en que ao estamos? Ao_act Edad = Ao_act Ao_nac // realiza una operacin y almacena el resultado // en la variable de la izquierda de la expresin. // Cuando deseamos mostrar el // contenido de una variable, esta no // debe de estar entre comillas Tu edad actual es:, Edad fin Diagrama N-S // diagrama N-S : Edad Personal Inicio Variables: Edad: entera // almacenar la edad del usuario Ao_nac: entera // guardar el ao en que naci Ao_act: entera // Contendr el ao en que estamos Escribir En que ao naciste? // muestra el mensaje que esta entre comillas Leer Ao_nac // guarda el dato que es tecleado por el usuario en la variable Escribir En que ao estamos? Leer Ao_act Edad = Ao_act Ao_nac // realiza una operacin y almacena el resultado en la variable de la // izquierda de la expresin. Escribir Tu edad actual es:, Edad // Cuando deseamos mostrar el contenido de una variable, esta no // debe de estar entre comillas Fin // Muestra el mensaje que esta entre comillas
Paso III. Prueba Del Algoritmo. Valores a entradas Procesos Ao_nac = 1977 Edad = Ao_act Ao_nac Ao_act = 2004 Edad = 2004 - 1977
Resultados
Edad = 27
Ejemplo
Supongamos que en una tortillera se necesita un sistema que calcule y le muestre el total a pagar por cada cliente, si sabemos que cada kilo de tortilla cuesta $4.50.
Constantes P_kilo = 4.5 PSEU DOC DI GO Procesos Total = kilos * P_kilos
Paso II. Disear El algoritmo Pseudocdigo: total a pagar Constantes: P_kilo: real = 4.5 Variables: 1. 2. 3. 4. 5. 6. Total : real Kilos : real Inicio Escribir Cuantos Kilos quieres? Leer kilos Total = Kilos * P_kilos Escribir el total a pagar es:, Total Fin DIAG RAM A D E F LU JO
// Diagrama de Flujo: Total a pagar Inicio CONSTANTES: P_Kilo : real = 4.5 VARIABLES: Total : real Kilos : real Cuantos kilos quieres? Kilos
Diagrama N-S // diagrama N-S : total a pagar Inicio Constantes: P_kilo: real = 4.5 Variables: Total : real Kilos : real Escribir Cuantos Kilos quieres? Leer kilos Total = Kilos * P_kilos Escribir el total a pagar es:, Total Fin Paso III. Prueba Del Algoritmo. Valores a entradas Kilos = 3.5
Procesos
Resultados
Total = 15.75