valdir calixto 0 Denunciar post Postado Abril 18, 2007 Fiz o algoritmo abaixo, simulando uma eleição, não consegui colocar o comando repita, os votos serão digitados via teclado que vão de 1 até 6, só que se o eleitor digitar um número maior que 6 ou igual a zero, quero que peça para ele digitar o voto novamente, tentei com o comando repita e o enquanto, mas não consegui que tiver uma dica, por favor responda.algoritmo "Eleições"// Função :// Autor : Valdir// Data : 18/4/2007// Seção de Declarações varcandA, candB, candC, candD,nulo, embranco, aux : Inteiropercentual : realinicio// Seção de ComandoscandA <- 0candB <- 0candC <- 0candD <- 0nulo <- 0embranco <- 0para aux de 0 ate 4 passo 1 facaescreval ("Escolha um Candidato: ")escreval ("1 - CandA, 2 - CandB, 3 - CandC, 4 - CandD, 5 - Voto Nulo, 6 - Voto em Branco")leia(aux)se aux = 1 entaocandA <- candA+1 senao se aux = 2 entao candB <- candB+1 senao se aux = 3 entao candC <- candC+1 senao se aux = 4 entao candD <- candD+1 senao se aux = 5 entao nulo <- nulo+1 senao se aux = 6 entao embranco <- embranco+1 fimse fimse fimse fimse fimsefimsefimparapercentual <- ((nulo+embranco)/5)*100escrevalescreval ("O candidato A, teve: ", candA," votos")escreval ("O candidato B, teve: ", candB," votos")escreval ("O candidato C, teve: ", candC," votos")escreval ("O candidato D, teve: ", candD," votos")escrevalescreval ("O NÚMERO DE VOTOS NULOS FOI DE: ", nulo," votos")escreval ("O NÚMERO DE VOTOS EM BRANCO FOI DE: ", embranco," votos")escreval ("O PERCENTUAL DE VOTOS BRANCOS E NULOS É DE: ",percentual," %")fimalgoritmo Compartilhar este post Link para o post Compartilhar em outros sites
Vergil 15 Denunciar post Postado Abril 18, 2007 Basta você acrescentar esse laço no seu algoritmo: repita escreval ("Escolha um Candidato: ") escreval ("1 - CandA, 2 - CandB, 3 - CandC, 4 - CandD, 5 - Voto Nulo, 6 - Voto em Branco") leia(aux) ate (aux > 0) e (aux < 7) Compartilhar este post Link para o post Compartilhar em outros sites
valdir calixto 0 Denunciar post Postado Abril 18, 2007 Acrescentei este comando mas não deu certo, pq acaba colocando um voto só, se eu colocar desta forma que você sitou. Compartilhar este post Link para o post Compartilhar em outros sites
Vergil 15 Denunciar post Postado Abril 18, 2007 Acrescentei este comando mas não deu certo, pq acaba colocando um voto só, se eu colocar desta forma que você sitou.Pelo o que eu entendi, sua dúvida era como filtrar a entrada dos votos. E é isso que o o trecho de algoritmo que te passei faz. Ele repete a leitura da variável até o usuário informar um voto que esteja entre 1 e 6.Mas se a dúvida não é essa, explica melhor para que eu possa ajudá-lo. http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Compartilhar este post Link para o post Compartilhar em outros sites
valdir calixto 0 Denunciar post Postado Abril 19, 2007 Eu vou tem cem eleitores votando, ou seja essa verificação tem que ser feita sempre que for inserido um voto. No código só uma pessoa tem possibilidade de votar. Compartilhar este post Link para o post Compartilhar em outros sites
Vergil 15 Denunciar post Postado Abril 19, 2007 Seria isso? algoritmo "eleicao"// Função :// Autor : Vergil// Data : 19/04/2007// Seção de Declarações var candA, candB, candC, candD, nulo, branco, voto, contar : inteiro percentual : realinicio // Seção de Comandos candA <- 0 candB <- 0 candC <- 0 candD <- 0 nulo <- 0 branco <- 0 para contar de 1 ate 100 passo 1 faca escreval("1 - Candidato A") escreval("2 - Candidato B") escreval("3 - Candidato C") escreval("4 - Candidato D") escreval("5 - nulo") escreval("6 - branco") repita leia(voto) se (voto <= 0) ou (voto >= 7) entao escreval(voto, " não é um número de candidato válido! Digite outro número.") fimse ate (voto > 0) e (voto < 7) se voto = 1 entao candA <- candA + 1 fimse se voto = 2 entao candB <- candB + 1 fimse se voto = 3 entao candC <- candC + 1 fimse se voto = 4 entao candD <- candD + 1 fimse se voto = 5 entao nulo <- nulo + 1 fimse se voto = 6 entao branco <- branco + 1 fimse limpatela fimpara percentual <- (nulo + branco) / (contar - 1) * 100 escreval ("O candidato A, teve: ", candA," votos") escreval ("O candidato B, teve: ", candB," votos") escreval ("O candidato C, teve: ", candC," votos") escreval ("O candidato D, teve: ", candD," votos") escreval escreval ("O NÚMERO DE VOTOS NULOS FOI DE: ", nulo," votos") escreval ("O NÚMERO DE VOTOS EM BRANCO FOI DE: ", branco," votos") escreval ("O PERCENTUAL DE VOTOS BRANCOS E NULOS É DE: ",percentual," %")fimalgoritmo Compartilhar este post Link para o post Compartilhar em outros sites
valdir calixto 0 Denunciar post Postado Abril 19, 2007 Ok, deu certinho muito obrigado Compartilhar este post Link para o post Compartilhar em outros sites