Pesquisar na Comunidade
Mostrando resultados para as tags ''estruturado''.
Encontrado 1 registro
-
Boa tarde pessoal, desenvolvi esse algoritmo para verificar se uma matriz é inca ou não, ou seja se partindo do extremo superior esquerdo e seguindo em espiral o número seguinte é o sucessor inteiro do número anterior, meu algoritmo está dando que a matriz é errada quando eu não começo com o primeiro termo da matriz [1,1] sendo 1, gostaria de pedir um minuto da atenção e experiência de todos vocês sou grato desde já. algoritmo "Matriz Inca" var i,j,n,inicol,fimcol,inilin,fimlin,degrau:inteiro matriz:vetor[1..20,1..20] de inteiro eh_inca:logico inicio repita escreva("Escolha a dimensão da Matriz:") leia (n) se((n < 1)ou(n > 20))então escreval("A dimensão da matriz precisa estar entre 1 e 20") fimse ate ((n > 0 ) e (n < 21)) escreval("Matriz: ",n ," x ",n) escreval("Digite os numeros da Matriz abaixo:") para i de 1 ate n faca para j de 1 ate n faca escreval("Entre com o valor de matriz[",i,",",j,"]:") leia (matriz[i,j]) fimpara fimpara para i de 1 ate n faca escreval para j de 1 ate n faca escreva (matriz[i,j]) fimpara escreval fimpara inicol <-1 fimcol <-n inilin <-1 fimlin <-n degrau <-0 eh_inca <- verdadeiro enquanto ((eh_inca) e (inicol<fimcol) e (inilin<fimlin)) faca para i de inicol ate fimcol faca se (matriz[inilin,i] = degrau + 1) então degrau <- degrau + 1 senao eh_inca <- falso fimse fimpara inilin <- inilin + 1 para i de inilin ate fimlin faca se (matriz[i,fimcol] = degrau + 1) então degrau <- degrau + 1 senao eh_inca <- falso fimse fimpara fimcol <- fimcol - 1 para i de fimcol ate inicol passo -1 faca se (matriz[fimlin,i] = degrau + 1) então degrau <- degrau + 1 senao eh_inca <- falso fimse fimpara fimlin <- fimlin - 1 para i de fimlin ate inilin passo -1 faca se (matriz[i,inicol] = degrau + 1) então degrau <- degrau + 1 senao eh_inca<-falso fimse fimpara inicol<-inicol + 1 fimenquanto se (eh_inca) então escreval ("Matriz é inca") senao escreval ("Matriz não é inca") fimse