www.monografias.com
Algoritmos, Codificación, Sentencias, Seudo códigos, Diagramas de Flujo 1. 2. 3. !. #. '.
Algoritmos Análisis del problema Diseo del algoritmo "seudo código $ariables %ectores & matrices Documentación
Algoritmos
El programador diseña un programa, para resolver un problema problema particular. particular. Diseñar es un proceso creativo. El proceso de diseño de un programa consta de los siguientes pasos o etapas:
Pasos:
Tipos : Método Algortmico
Descripción !tili"a un algoritmo algoritmo # puede ser implementado en una computadora
&eur &eurs sti tica ca::
Ejemplos $nstrucciones para manejar un ve%culo $nstrucciones para secar grano a granel $nstrucciones para resolver ecuación de segundo grado
'e apo# apo#a a en en el el res resul ulttado ado obt obten enid ido o en en un un an(lisis de alternativas de e)periencias anteriores similares. similares. De las mismas, mismas, a se deducen una serie serie de reglas empricas o %eursticas *ue de ser seguidas, conducen a la selección selección de la mejor alternativa en todas o la ma#ora de las veces.
+ara ver trabajos similares o recibir información semanal sobre nuevas publicaciones, visite www.monografias.com
www.monografias.com
uic- asic es un lenguaje de programación estructurado # el algoritmo se representara en seudo código #/o diagrama de flujo.
Análisis del problema 0e*uiere la clara definición del problema donde se indi*ue *ue va %acer el programa # cual ve a ser el resultado. Debe detallarse las especificaciones de entrada # salida, 1os re*uisitos *ue definen el an(lisis son :
1a ecuación de segundo grado se define algebraicamente como :
+ara ver trabajos similares o recibir información semanal sobre nuevas publicaciones, visite www.monografias.com
www.monografias.com
periférico 2 3 4 6
An(lisis del problema Def. del problema Especif. de entrada Especif. de salida
&allar races ecua. 3do grdo coeficientes a, b, c 72, 73
5eclado +antalla $mpresora
Entrada: por teclado coef Descripción a team. cuadr(tico b term. lineal c term. independiente
8odificación en asic $9+!5 8oef a ;<=A $9+!5 8oef b ;<= $9+!5 8oef c ;<=8
+ara ver trabajos similares o recibir información semanal sobre nuevas publicaciones, visite www.monografias.com
www.monografias.com
Diseo del algoritmo An(lisis de proceso implica *ue %ace el programa. Diseño implica como se %ace o reali"a la tarea >problema? solicitado En el diseño: El todo es la sumatoria de las partes. Divide el todo en varias partes. En la resolución de un problema complejo, se divide en varios sub problemas # seguidamente se vuelven a dividir los sub problemas en otros mas sencillos, %asta *ue puedan implementarse en el computador. Esta caracterstica define lo *ue se entiende como diseño descendente( 5op@Down / 9orte@'ur ? o
diseño modular.
El proceso de ruptura del problema en cada etapa se llama refinamiento sucesivo. 8ada problema se resuelve mediante un modulo (subprograma? # tiene un solo punto de entrada # un solo punto de salida. !n programa bien diseñado consta de un programa principal >modulo de nivel mas alto? *ue llama a subprogramas >módulos de nivel mas bajo?, *ue a su ve" pueden llamar otros sub programas. 1os programas *ue se estructuran de esta forma, se dicen *ue tienen diseño modular # el método de romper el programa en modos pe*ueños se llama programación modular . 1os módulos pueden ser planificados, codificados, compilados # depurados independientemente pueden ser intercambiados entre si. Este proceso implica la ejecución de los siguientes pasos:
2 3 4 6
programar un modulo comprobar un modulo depurar el modulo combinar el modulo con módulos anteriores
este proceso convierte el resultado del an(lisis del problema en un diseño modular con refinamientos sucesivos *ue permiten una traducción a un lenguaje *ue se denomina diseño del algoritmo. El algoritmo se puede representar por medio de dos formas :
+ara ver trabajos similares o recibir información semanal sobre nuevas publicaciones, visite www.monografias.com
www.monografias.com
"seudo código Diagrama de flujo: +seudo código: es el lenguaje de especificación de algoritmos # tiene una estructura: 1as instrucciones se escriben en ingles o en palabras similares al ingles o español *ue facilitan la escritura de programación +ara la resolución de una ecuación de segundo grado se escribira inicio $ntroducir coeficientes a, b # c $mprimir ttulos primera ra", segunda ra", no tiene solución, 8alcular ra" 2 # ra" 3 $mprimir ra" 2 # ra" 3 in Diagramas de flujo (flo)s c*arts+ Es la representación grafica del algoritmo= segBn la A9'$
consta de una simbologia , *ue tiene los siguientes significados:
+ara ver trabajos similares o recibir información semanal sobre nuevas publicaciones, visite www.monografias.com
www.monografias.com
'mbolos del Diagrama de flujo S-mbolo
Función
+roceso
8ual*uier tipo de operación *ue origine cambio de valor, formato, posicion de la informacion almacenada en memoria, operaciones aritmeticas, de transferencia, etc.
Entrada/'alida
8ual*uier tipo de de introduccion de datosen la memoria desde los perifericos
$mpresora
'e utili"a en ocaciones en lugar del simbolo de entradaa/salida
Monitor
1lamada a subrutina, funcion o procedimiento= este es un modulo independiente del programa principal, *ue recibe una entrada procedente de dic%o programa , reali"a una tarea determinada # regresa al terminar al propgrama principal +antalla = en ocaciones se utili"a en lugar de simbolo de entrada / salida
+roceso: Decisión
$ndica operaciones logicas o de comparacionentre datos@ normalmente entre dos # en funcion del resultado, determina cual de los dos caminos alternativos se debe seguir= normalmente tiene dos salidas@ respuestas si o no.
8onector
'irve para enla"ardos partes cuales*uiera de un organigrama a traves de un conector de salida # otro en la entrada. En la misma pagina del diagrama
8onector
8one)ión entre dos puntos del organigrama situados en paginas diferentes
5eclado
En ocaciones se utilisa en lugar del simbolo de entrada/salida
8odificación :
+ara ver trabajos similares o recibir información semanal sobre nuevas publicaciones, visite www.monografias.com
www.monografias.com
+rogramación: Cindows/Dos/ uic- asic ; Editor de te)to. +rograma: definición: conjunto de datos # sentencias: !n programa tiene la forma
Inicio Datos (entrada) Sentencia 1 Sentencia 2 .......... .......... Sentencia n Datos procesados (salida) Final
En el editor de uic- asic se escribira codificado el seudo código *ue tendra la forma: 0EM +rograma para calcular las soluciones 0EM de una ecuacion de segundo grado +0$95 Escriba los valores de A, # 8 8;<8alculos< $9+!5 A,,8, A, , 8 0 ; > F 3 @ 6 G A G 8? F .H 1E5 72 ; >@ I 0? / >3 G A? 1E5 73 ; >@ I 0? / >3 G A? +0$95 +0$95 A;= A, ;= , 8;= 8 +0$95 72;= 72, 73;= 73 +0$95 E9D En el MenB Ejecutar En la pantalla veramos:
+ara ver trabajos similares o recibir información semanal sobre nuevas publicaciones, visite www.monografias.com
andatos e instrucciones
Mandato >command?: es una orden aislada de efecto inmediato. Ejemplo: Mandato 0!9 1$'5 'AKE.
Descripción Jrdena la ejecución de un programa. Escribe En la pantalla el listado del programa Luarda, graba el programa como un arc%ivo de e)tensión A' en el disco
$nstrucción: es una orden contenida en un programa. Ejemplo: $nstrucción +0$95 $9+!5
Descripción Escribe en pantalla. $ntroduce >entra datos?
Edición de un programa: un programa esta formado por lneas secuenciales *ue se ejecutan en forma descendente >!p Down? +ara dar por terminada una lnea se pulsa la tecla Enter >0eturn? en cual*uier parte de la misma. +ara cambiar una lnea basta volver a teclearla. 'e puede corregir una lnea >borrar, rescribir ? en pantalla o bien con el mandato ED$5. 'e pueden incluir varias instrucciones en una misma lnea, separ(ndolos por dos puntos. !na lnea de pantalla >cuarenta u oc%enta posiciones? es diferente de una lnea de programa >doscientos cincuenta # seis posiciones?.
Modo Directo: Modo +rograma 0un Kentana activa Kentana inmediata mandato 81'
Descripción borra la pantalla
0ecomendaciones: 5odo programa debe estar documentado con comentarios= la primera lnea debe contener el titulo del programa. 1os comentarios deben de ir precedidos de la palabra clave 0EM o de un apostrofo > ? 'i una lnea #a tiene otras instrucciones, el comentario debe ir al final de la lnea. 1os comentarios solo aparecen en el listado del programa # no aparecen escritos en la pantalla durante la ejecución.
8onstantes: asic, trabaja con dos tipos de datos: Datos numéricos:
alfanuméricos
5ipos Enteros >$95? Enteros largos >19L? de simple precisión >'L1? de doble precisión >D1? %ileras o cadenas >'50? fila de caracteres en A'8$$ > en parte del teclado ?
1as constantes alfanuméricas pueden ser enteras o fraccionarias, se representan en forma decimal= se puede emitir el cero a la i"*uierda del punto decimal. Ejemplo
46H3
@23.NO
.34
I2346H
Estos son ejemplos de valores numéricos de punto fijo= se puede emplear una notación de punto flotante. Mantisa
letra
e)ponente
2,346HNEI2H 2346HN.PPPPPPPPPP 2.346HNOQRPOQR6HNDS2P
P.PPPPPPPPP2346HNOQRP236HN
El numero m()imo de cifras significativas con *ue se trabaja es: N para la precisión simple >'9L? 2N para la precisión doble >D1? En las constantes de punto fijo %a# *ue añadir el car(cter T 1as constantes alfanuméricas son %ileras de caracteres= se escriben entre comillas, Ej. &ola = A6OE8
$ariables %ectores & matrices
!na variable es una "ona de memoria *ue almacena un dato
!na variable se identifica mediante un nombre. El nombre de una variable numérica debe empe"ar por una letra # puede ir sucedido de otras letras # / o otros dgitos >7, A, 2, peso, 5462? !na variable alfanumérica debe terminar con el car(cter >), a34, dias,? Est(n terminantemente pro%ibidas los nombres de variables *ue contengan pa labras claves de asic >+/0, S4, 9F,? 1as variables de precisión doble # enteros se identifican añadiendo el car(cter T o el car(cter U , también se pueden declarar como DED1 A
Documentación 1os comentarios *ue se inclu#an deben ser significativos Documentación interna: Ka incluida dentro del código del programa fuente, por medio de comentarios *ue a#udan a la comprensión del código. 5odas las sentencias comien"an con la sentencia /5 o su e*uivalente el car(cter apostrofe > 6?. El programa en si no los necesita # los ignora. &ace *ue los programas sean comprensibles.
Autor: Documento cedido por: ng. F7li8 9ernab7 :utierre; Aguado
educadorV3HW%otmail.com feli)bernabe3HWgmail.com