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
Related documents