Download PRÁCTICA No 51 Diseñar un programa que permita realizar el
Document related concepts
Transcript
PRÁCTICA No 51 Diseñar un programa que permita realizar el cargado de una matriz de dimensiones de NxN que para el caso de una matriz de 5x5 presenta la forma: 9 8 7 6 5 10 11 12 1 15 13 2 12 14 3 13 11 4 14 15 10 6 7 8 9 Con el fin de apreciar el resultado así obtenido, el programa debe presentar las siguientes pantallas de trabajo: PANTALLA DE TRABAJO SOLUCIÓN Las variables empleadas en el presente diagrama, desarrollan las siguientes tareas: VARIABLES TAREA A REALIZAR N Variable donde se almacena el orden de la matriz a desarrollar. W Variable que genera el número a ser almacenado en la matriz. CON Variable auxiliar que controla las secuencias de generación. F Variable que determina las filas de la serie izquierda. C Variable que controla las columnas de la serie izquierda. F1 Variable que señala las filas de la serie derecha. C1 Variable que controla las columnas de la serie derecha. A Variable arreglo que almacena la secuencia numérica señalada. R, E Contadores automáticos que permiten la generación de la secuencia. INICIO @ & CON PANTALLA DE ENTRADA 1 2 NO 3 CON = 3 SI CON = 0 N W=0 CON = 0 F=0 C = N+1 F1 = 0 C1 = N+1 F=F+1 C=C- 1 F1 = F1 - 1 C1 = C1 +1 F=F- 1 C=C+ 1 F1 = F1 + 1 C1 = C1 - 1 E CON = (80 - N*5) DIV 2 W=@ W+1 F = 1 -- N ' ' : CON A(F,C1) = W A(F1,C) = W C = 1 -- N E = N -- 1 R A(F,C):5 CON = CON + 1 & C R = 1 -- E F @ FIN PANTALLA DE TRABAJO CODIFICACIÓN LAB_51 PROGRAM PRÁCTICA No 52 Diseñar un programa interactivo que permita transformar la notación de un número decimal como un número romano, por ejemplo: 123410 = MCCXXXIV Para una mejor manipulación de la información, el programa debe presentar las siguientes pantallas de trabajo: PANTALLA DE TRABAJO SOLUCIÓN Cabe señalar que el programa desarrollado, solo permite transformar números decimal en el rango, 1 N 3000 . En caso de necesitar desarrollar una transformación de números más grandes, es necesario incrementar en las constantes las letras que representan a cada una de las cantidades intermedias antes de alcanzar el número correspondiente. Las variables empleadas en el presente diagrama, desarrollan las siguientes tareas: VARIABLES TAREA A REALIZAR N Variable donde se almacena el número decimal a ser transformado. P Variable que señala la posición de almacenamiento. C Variable que señala la posición de la constante equivalente. D Variable que determina la cantidad introducida en progresión de 10. R Variable que determina el digito a ser presentado. V Variable arreglo en la que se almacena el equivalente romano. F Contador auxiliar que permite repetir una misma notación. INICIO @ CONSTANTE R A(1)='M' A(2)='D' A(3)='C' A(4)='L' A(5)='X' A(6)='V' A(7)='I' 9 7 6 5 4 3 2 V(P) = A(C-1) V(P) = A(C) F = P -- P+R-1 V(P+1) = A(C-2) R=R- 5 V(P) = A(C-1) V(F) = A(C) P= P+ 2 F P= P+ 2 F = 1 -- R V(P+F) = A(C) N <= 3000 y N > 0 P= P+ R NO F SI P= P+ R+ 1 P= 1 C = -1 D = 10000 1 N = N MOD D C=C+2 NO N=0 D=D DIV 10 SI F=1 -- P R=N DIV D R<10 Y R>0 1 V(P) = A(C) PANTALLA DE ENTRADA N 8 V(F) NO F SI FIN @ PANTALLA DE TRABAJO 1 CODIFICACIÓN LAB_52 PROGRAM