A prefeitura de uma cidade desenvolveu um programa para cadastro dos moradores, e cada morador (não é especificada a quantidade) deve informar a sua idade. A prefeitura quer obter no final do cadastro a quantidade de moradores que são eleitores obrigatório, a quantidade de moradores que são eleitores facultativos e quantos moradores não são eleitores, de acordo com a tabela a seguir:
Idade
Tipo de Eleitor
>= 18 e <= 69 Obrigatório
= 16 ou = 17 ou >= 70 Facultativo
< 16 Não é eleitor
Assim, faça um programa em VisualG que receba a idade de cada morador (quantidade indeterminada) e obtenha as quantidades requeridas pela prefeitura.
Soluções para a tarefa
Para determinarmos se os moradores dessa cidade são eleitores obrigatórios, facultativos ou não eleitores devemos, primeiro, receber um valor inteiro para a sua idade e depois verificar em que situação ela se encaixa, ou seja, se o morador tiver idade entre 18 e 69 anos então ele é eleitor obrigatório. Assim, estaremos fazendo uso dos conectores lógicos "e" e "ou".
Como não foi especificada a quantidade de moradores, iremos pedir que o usuário a coloque. Isso servirá como parâmetro de parada para a repetição do teste.
Assim:
var: idade, obrigatorio, facultativo, naoeleitor,cont, i
inicio
escreva("Quantas pessoas quer cadastrar?")
leia(cont)
enquanto i <> cont faca:
escreva("digite a idade do morador")
leia (idade)
se ((idade >=18) e (idade <= 69)) entao:
obrigadorio = obrigatorio + 1
fimse
se ((idade = 16) ou (idade = 17) ou (idade >=70)) entao:
facultativo = facultativo + 1
fimse
se (idade <16) entao:
naoeleitor = nao eleitor + 1
fimse
i = i + 1
fim enquanto
escreval("A quantidade de eleitores obrigatorios e", obrigatorio)
escreval ("A quantidade de eleitores facultativos e", facultativos)
escreval ("A quantidade de nao eleitore e", naoeleitores)
fimalgoritmo
Espero ter ajudado, bons estudos :)
escreval("Digite a quantidade de pessoas que deseja cadastrar: ")
leia(qtdeEleitores)
para i de 1 ate qtdeEleitores faca
escreval("Digite a idade da pessoa: ")
leia(eleitorIdade)
se (eleitorIdade >= 18) E (eleitorIdade <= 69) entao
obrigatorio <- obrigatorio + 1
fimse
se (eleitorIdade = 16) OU (eleitorIdade = 17) OU (eleitorIdade >= 70) entao
facultativo <- facultativo + 1
fimse
se (eleitorIdade < 16) entao
naoEleitor <- naoEleitor + 1
fimse
fimpara
escreval("A quantidade de eleitores facultativos é: ", facultativo)
escreval("A quantidade de não eleitores é: ", naoEleitor)
qtdeEleitores, eleitorIdade, i, obrigatorio, facultativo, naoEleitor : inteiro
Resposta:
Var
M, Idade , Obrigatorio, Facultativo, NaoEleitor, X: inteiro
Inicio
escreval("Informe quantas pessoas você irá cadastrar: ")
leia(M)
para X de 1 até M faca
escreval("Informe a Idade: ")
leia(Idade)
se (Idade >= 18) e (Idade <= 69) entao
Obrigatorio <- Obrigatorio + 1
senao
se (Idade = 16) ou (Idade = 17) ou (Idade >=70) entao
Facultativo <- Facultativo + 1
senao
se (Idade < 16) entao
NaoEleitor <- NaoEleitor + 1
fimse
fimse
fimse
fimpara
escreval("Quantidade de Eleitores com voto Obrigatório é: ", Obrigatorio)
escreval("Quantidade de Eleitores com voto Facultativo é: ", Facultativo)
escreval("Quantidade de Não Eleitores é: ", NaoEleitor)
Fimalgoritmo
Explicação:
fiz e testei no visualg 3, e deu certo. Obs: favor alterar o nome das vareáveis, para não entregarmos os trabalhos iguais.