Ir ao conteúdo
  • Cadastre-se
Ayron Matos

VisualG introdução aos algoritmos - matrizes - desafio

Recommended Posts

image.png.973685047594404bfe7b23e62f13d660.png

Este é o desafio. Meu problema é com o comando Repita do Visualg, pois quando tento executar o código aparece as seguintes notificações:

image.png.b61e6bc2f62376f1baa5753e11211a89.png 

o código segue abaixo

algoritmo "QUADRADO MÁGICO"
// Função :criador de quadrado mágico de ordem 7
// Autor : Ayron Gabryew Dias da Costa Matos
// Data : 10/07/2018
// Seção de Declarações 
procedimento MOSTRARPAINEL()
inicio
             EscrevaL(" =============================")
             EscrevaL("| CRIADOR DE QUADRADO MÁGICO  |")
             EscrevaL("| [ 1 ] inverta a matriz      |")
             EscrevaL("| [ 2 ] rotac. a matriz       |")
             EscrevaL("| [ 3 ] sair                  |")
             EscrevaL(" =============================")
fimprocedimento
procedimento INVERSOR()
inicio
      LimpaTela
      Para i := 1 ate 4 faca
           Para j := 1 ate 7 faca
                 c <-8-i
                 Se (i=j) então
                    aux <- m[i,j]
                    m[i,j] <- m[c,c]
                    m[c,c] <- aux
                 FimSe
                 Se (j=c) então
                     aux <- m[i,j]
                     m[i,j] <- m[j,i]
                     m[j,i] <- aux
                 FimSe
           FimPara
      FimPara
      Para i := 1 ate 7 faca
           Para j := 1 ate 7 faca
                Escreva(m[i,j]:4)
           FimPara
           EscrevaL()
      FimPara
fimprocedimento
procedimento ROTACIONADOR()
inicio
      LimpaTela
      Para j := 1 ate 6 faca
           c <- j+1
           m[1,c] <- m[1,j]
      FimPara
      Para i := 7 ate 2 passo -1 faca
           c <- i-1
           m[c,1] <- m[i,1]
      FimPara
      Para j:= 7 ate 2 passo -1 faca
           c <- j-1
           m[7,c] <- m[7,j]
      FimPara
      Para i := 3 ate 6 faca
           c <- i+1
           m[c,7] <- m[i,7]
      FimPara
      m[3,7] <- 14
      Para i := 1 ate 7 faca
           Para j:= 1 ate 7 faca
                Escreva(m[i,j]:4)
           FimPara
           EscrevaL()
      FimPara
fimprocedimento
var
   m: vetor[1..7, 1..7] de inteiro
   i,j,c,aux,somador, opcao,resp: inteiro
inicio
      Para i := 1 ate 7 faca
           Para j := 1 ate 7 faca
                somador <- somador + 1
                m[i,j] <- somador
           FimPara
      FimPara
      LimpaTela
      Repita
            MOSTRARPAINEL()
            Escolha opcao
            CASO 1
                 INVERSOR()
            CASO 2
                 ROTACIONADOR()
            CASO 3
                 Escreva("Programa finalizado com sucesso!")
            Outrocaso
                 Escreva("opcao inválida")
      ATE opcao=3
fimalgoritmo

 

  • Amei 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sobre:

19 minutos atrás, Ayron Matos disse:

Este é o desafio. Meu problema é com o comando Repita do Visualg, pois quando tento executar o código aparece as seguintes notificações:

 

Está jogando a "culpa" pro cara errado... o erro citado não está no repita, mas sim no ESCOLHA/CASO. Vide a sintaxe dessa estrutura... tem algo faltando nela.

 

Spoiler

cadê o fimEscolha?

 

Ai reanalisa o código, e vai implementando e testando.

 

 

No aguardo.

Editado por Simon Viegas
  • Curtir 2

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×