terça-feira, 13 de outubro de 2009

Algoritmo de utilização de Matriz Multidimencional

Atendendo a sugestão do prof° Egydio, estamos publicando o algoritmo de manipulação de matriz multidimencional:

algoritmo "Matriz_Multidimencional"
// Função : Montar um algoritmo com procedimentos que preencha uma matriz 20x20, que possa escolher o sentido do preenchimento:
// 1 - horizontal da esquerda p/ direita (imprimir na tela nessa mesma direção)
// 2 - horizontal da direita p/ esquerda (imprimir na tela nessa mesma direção)
// onde se possa escolher o início do preenchimento, ou seja, a linha e a coluna que iniciará o preenchimento
//
//------------------------------------------------------------------------------------------------------------------------------
// Autor :Haroldo R. dos Santos
// Data : 10/10/2009
// Seção de Declarações
procedimento Menu
Var op: inteiro

inicio
ESCREVAL("Objetivo: digitar uma palavra letra por letra que contenha no máximo 20 letras")
ESCREVAL("Escolha a ordem de armazenamento das letras na Matriz:")
ESCREVAL("1 - Horizontal da esquerda para a direita")
ESCREVAL("2 - Horizontal da direita para a esquerda")
LEIA(op)

ESCOLHA op
CASO 1
N1
CASO 2
N2
FIMESCOLHA
timer (3000)
fimprocedimento

//------------------------------------------------------------------------------

procedimento N1
var
B: vetor [1..20,1..20] de CARACTER
Indice,Num_Total, Num_Dig, Linha, Col, Cont: inteiro

inicio
ESCREVAL("ESCOLHA O ÍNDICE DA LINHA EM QUE A MATRIZ SERÁ INICIALIZADA: (ENTRE 1 E 20)")
LEIA (Indice)
ESCREVAL("DIGITE A QUANTIDADE DE LETRAS QUE A PALAVRA A SER DIGITADA TERÁ:(MÁXIMO 20 LETRAS)")
LEIA(Num_Dig)
Num_Total <- Num_Dig
Col <- Num_Dig
Cont <- 1
Linha <- Indice

PARA Col DE 1 ATE Num_Dig FACA
ESCREVAL("DIGITE A",Cont,"ª LETRA DAS",Num_Total," LETRAS DA PALAVRA A SER ESCRITA:")
LEIA(B[Linha,Col])
Cont <- Cont + 1
ESCREVAL("===================================================================")
FIMPARA

PARA Col DE 1 ATE Num_Dig FACA
timer 500
ESCREVA(B[Linha,Col])
FIMPARA
fimprocedimento

//------------------------------------------------------------------------------

procedimento N2
var
B: vetor [1..20,1..20] de CARACTER
Indice,Num_Total, Num_Dig, Linha, Col, Cont: inteiro

inicio
ESCREVAL("ESCOLHA O ÍNDICE DA LINHA EM QUE A MATRIZ SERÁ INICIALIZADA: (ENTRE 1 E 20)")
LEIA (Indice)
ESCREVAL("DIGITE A QUANTIDADE DE LETRAS QUE A PALAVRA A SER DIGITADA TERÁ:(MÁXIMO 20 LETRAS)")
LEIA(Num_Dig)
Num_Total <- Num_Dig
Col <- Num_Dig
Cont <- 1
Linha <- Indice

PARA Col DE Num_Dig ATE 1 PASSO -1 FACA
ESCREVAL("DIGITE A",Cont,"ª LETRA DAS",Num_Total," LETRAS DA PALAVRA A SER ESCRITA:")
LEIA(B[Linha,Col])
Cont <- Cont + 1
ESCREVAL("===================================================================")
FIMPARA

PARA Col DE 1 ATE Num_Dig FACA
timer 500
ESCREVA(B[Linha,Col])
FIMPARA
fimprocedimento

inicio
// Seção de Comandos
Menu
fimalgoritmo

OBS: Código Elaborado em VisuAlg

Autor do código: Haroldo R. dos Santos - Aluno do 2ºA ECOMPO

Nenhum comentário:

Postar um comentário