Bernardo Kowacic 0 Denunciar post Postado Maio 31, 2013 Olá, eu estou tendo problemas nesse trabalho no Caso 8, em que é necessário apresentar os valores impares que foram digitados pelo usuário. Em vez de apresentar os valores impares, ele não aparece nada e retorna ao menu novamente. algoritmo "semnome" // Função : // Autor : // Data : 28/05/2013 // Seção de Declarações var array: vetor [0..19]de real save: vetor [0..19]de real menu, x, y, cont, fim:inteiro g1, g2: real inicio fim<-0 array[x]<-0 repita escreval("Por favor selecione uma opção:") escreval(" 0 – Imprimir o array") escreval(" 1 – Inicializar com valores do usuário") escreval(" 2 – Calcular o quadrado") escreval(" 3 – Calcular a divisão por 2") escreval(" 4 – Deslocar os elementos à direita") escreval(" 5 – Deslocar os elementos à esquerda") escreval(" 6 – Imprimir os números ímpares") escreval(" 7 – Inverter os valores do array") escreval(" 8 – Duplicar os valores") escreval(" 9 – Informar se o array está organizado em ordem crescente") escreval("Digite qualquer outra coisa para sair.") leia(menu) escolha menu caso 0 para x de 0 ate 19 faca escreva ("", array[x]) fimpara escreval("") caso 1 escreval("Digite 20 valores: ") para x de 0 ate 19 faca leia (array[x]) fimpara caso 2 para x de 0 ate 19 faca array[x]<-array[x]*array[x] fimpara caso 3 para x de 0 ate 19 faca array[x]<-array[x]/2 fimpara caso 4 g1<-array[19] para x de 0 ate 18 faca x<-x+1 array[x]<-x fimpara array[0]<-g1 caso 5 g1<-array[0] para x de 19 ate 0 faca y<-x-1 g2<-array[y] array[x]<-g2 fimpara array[19]<-g1 caso 6 para x de 0 ate 19 faca se array[x] mod 2 = 1 entao escreva("", array[x]) fimpara caso 7 para x de 0 ate 19 faca save[x]<- array[x] fimpara y<-19 para x de 0 ate 18 faca array[y]<- save[x] y<-y-1 fimpara caso 8 para x de 0 ate 19 faca save[x]<-array[x] fimpara y<-0 para x de 0 ate 19 faca array[x]<- save[y] se (x mod 2 =1) entao y<-y+1 fimse fimpara caso 9 para x de 1 ate 19 faca y<-x-1 se array[x] > array[y] entao cont<-0 enquanto cont<1 faca escreval("Crescente") cont<-cont+1 fimenquanto fimse fimpara outrocaso fim<-1 fimescolha ate(menu>=10) fimalgoritmo Compartilhar este post Link para o post Compartilhar em outros sites
Eisenheim 67 Denunciar post Postado Junho 3, 2013 Olá amigo. Na verdade, em qualquer opção que você entrar vai acontecer isso. O correto seria você criar um procedimento somente com as opções do menu, e chamá-lo fora do loop Repita. Acrescente uma nova opção ao seu menu de forma que o usuário consiga chamar novamente as opção do menu para escolher o que selecionar. Outra coisa. Você precisa fazer algumas validações, pois antes de alimentar seu vetor eu posso selecionar alguma operação dentre as opção, e nada irá acontecer, pois esse mesmo vetor ainda está sem valores para realizar tais operações. Até a próxima. :thumbsup: Compartilhar este post Link para o post Compartilhar em outros sites