Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

iNoLife

Erro portugol

Recommended Posts

Estou com um problema ao fazer o seguinte algoritmo:

 

 

algoritmo "eleiçoes"
// Função : define se está apto para votar
// Autor :
// Data :
// Seção de Declarações
var
idade2, diaatual, mesatual, dia, mes, ano, mesdia, anodia, totalano, totaldia, totaldia2, totaldia3, restomes, restodias, mesatual2, resto: real
idade: inteiro
alfabetizacao: caractere
inicio
// Seção de Comandos
escreval ("Para começarmos, por favor responda a proxima pergunta, sendo 's' para sim e 'n' para não")
escreval ("Voce e alfabetizado(a)?: ")
leia (alfabetizacao)
se (alfabetizacao = "n") entao
repita
escreval ("Em que ano voce nasceu?: ")
leia (ano)
se (ano>1998) entao
escreval ("Voce nao pode votar!")
senao
escreval ("Em que mes voce nasceu?: ")
leia (mes)
se ((mes<=0) ou (mes>12)) entao
escreval ("Valor invalido, tente novamente!")
senao
escreval ("Em que dia voce nasceu?: ")
leia (dia)
se ((dia>31) ou (dia<=0)) entao
escreval ("Valor invalido, tente novamente!")
senao
se ((ano=1998) e (mes>10) ou (mes=10) e (dia>5)) entao
escreval ("Voce nao pode votar!")
senao
escreval ("Voce tem o direito de votar: VOTO FACULTATIVO!")
se (alfabetizacao = "s") entao
repita
escreval ("Por favor, digite o dia de hoje: ")
leia (diaatual)
se ((diaatual <= 0) ou (diaatual>31)) entao
escreval ("Valor ivalido, tente novamente!")
senao
escreval ("Valor valido")
escreval ("Digite o mes atual: ")
leia (mesatual)
se ((mesatual<=0) ou (mesatual>12)) entao
escreval ("Valor invalido, tente novamente!")
senao
escreval("Valor valido")
escreval ("Para sabermos se podera ou nao votar, digite o dia de seu nascimento: ")
leia (dia)
se ((dia<=0) ou (dia>32)) entao
escreval ("Valor invalido, tente novamente!")
senao
escreval ("Valor valido")
escreval ("Agora digite o mes de seu nascimento: ")
leia (mes)
se ((mes<=0) ou (mes>12)) entao
escreval ("Valor invalido, tente novamente!")
senao
escreval ("valor valido")
escreval ("Por fim, digite o ano de seu nascimento: ")
leia (ano)
se ((ano <1890) ou (ano>=2015)) entao
escreval ("Valor invalido, tente novamente!")
senao
escreval("Valor valido")
se (mes<10) entao
ano <- ano + 1
senao
ano <- ano + 2
restomes <- 10-mesatual
restodias <- diaatual - 5
mesatual2 <- restomes * 30
resto <- restodias + mesatual2
mesdia <- mes * 30
totalano <- 2014 - ano
anodia <- totalano * 365
totaldia <- mesdia + anodia
totaldia2 <- totaldia + dia
totaldia3 <- totaldia2 + resto
idade = totaldia3 / 365
se (idade<16) entao
escreval ("Voce nao pode votar")
se ((idade < 18) ou (idade>70) entao
escreval ("Voce tem o direito de votar: Voto facultativo!")
senao
escreval ("Voce tem o direito de votar: Voto obrigatório!")
fimse
fimse
fimse
fimse
fimse
fimse
fimse
fimse
fimse
fimse
fimse
fimse
fimse
fimse
fimalgoritmo
A PARTE DO "n" FUNCIONA, MAS SE O USUÁRIO DIGITAR "s" O PROGRAMA TERMINA. QUAL O ERRO?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você esqueceu de fechar o repita na primeira parte. A ausência dele bugou a segunda parte do código.

Também falta fechar o repita da segunda parte. Senão você pode ter outro erro(no caso, bug).

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.