Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.
    • DiF

      Poste seus códigos corretamente!   21-05-2016

      Prezados membros do Fórum do Clube do Hardware, O Fórum oferece um recurso chamado CODE, onde o ícone no painel do editor é  <>     O uso deste recurso é  imprescindível para uma melhor leitura, manter a organização, diferenciar de texto comum e principalmente evitar que os compiladores e IDEs acusem erro ao colar um código copiado daqui. Portanto convido-lhes para ler as instruções de como usar este recurso CODE neste tópico:  
allanalencar

VisualG Relatório de entrevistas de pessoas

Recommended Posts

Postado (editado)

Boa noite.

 

Gostaria de apoio na resolução deste problema. Estou no início do curso e necessito de ajuda. Muito obrigado.

 

 

Para esta atividade MAPA queremos que você exercite o conteúdo que está sendo apresentado na disciplina. Sendo assim: Escreva um algoritmo que faça a entrevista de 20 pessoas.


Seu algoritmo em Portugol deve conter os seguintes requisitos: 
I. Realizar a leitura dos seguintes dados, para cada uma das 20 pessoas:
   - Nome.
   - Idade.
   - Sexo.
   - Quantidade de filhos.
   - Renda mensal familiar.

Obs.: Sair do laço de repetição se um nome não for preenchido, mesmo se não atingir 20 pessoas.

II. Com base nos dados coletados, apresente na tela as seguintes informações:
     - Percentual de mulheres e homens.
     - Número de pessoas com renda familiar de 500.00 (quinhentos reais) ou acima.
     - Percentual de pessoas que tem ao menos 1 filho.
     - Número de pessoas que nasceram a partir do ano 2000.

 

Editado por Simon Viegas
  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

@allanalencar   para começar você precisa criar cinco vetores , sendo hum para cada  dado da pessoa , e uma variável para o contador , assim você precisa de um vetor para o nome outro para a idade outro para sexo outro para quantidade de filhos outro para a renda mensal familiar , em seguida você coloca um laço de repetição que pode ser o enquanto , e dentro dele você pega os dados já colocando no vetor referente e verifica se para o nome foi digitado pelo menos um caractere senão sair do laço , e verificar também se já foram cadastrados 20 pessoas , para isso verifique o contador , se sim então também saia do laço , e depois de pegar os cinco dados da pessoa incrementa o contador para pegar os dados de outra pessoa ,  depois fazer os cálculos e imprimir os resultados  .   para controlar o laço você coloca uma variável que enquanto tiver determinado valor se repetirá e então para sair do laço você simplesmente modifica o valor dessa variável  .

  • Curtir 3

Compartilhar este post


Link para o post
Compartilhar em outros sites

@devair1010  Obrigado pela interpretação e a dica. Estou quebrando cabeça para desenvolver esse algoritmo. Praticando aqui para aprender. 

adicionado 30 minutos depois

@devair1010 Você consegue me passar pelo menos a primeira parte resolvida?

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá @allanalencar.


Quais os assuntos que já estou?   já estudou vetores?

 

Por favor, poste o que já conseguiu fazer e onde está com dúvidas.

 

No aguardo.

  • Curtir 2

Compartilhar este post


Link para o post
Compartilhar em outros sites
Postado (editado)

@devair1010 @Simon Viegas

ALGORITMO "ENTREVISTA"
var
   NOME, IDADE, SEXO, QUANTIDADE DE FILHOS, RENDA FAMILIAR MENSA : literal
inicio
leia "Digite o primeiro nome:", NOME1
leia "Digite  a idade da primeira pessoa:", IDADE1
leia "Digite  o sexo da primeira pessoa:", SEXO1
leia "Digite a quantidade de filhos da primeira pessoa:", QUANTIDADEDEFILHOS1
leia "Digite a renda familiar da primeira pessoa:", RENDAFAMILIAR1


....

 

 

Ainda não consigo evoluir. Os livros que o professor passar tem exercícios completamente diferente do que esse que ele passou. O nível aumentou.

Editado por Simon Viegas
Inserir tag CODE
  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bacana... já é um progresso!!!

Sobre o "Portugol", vocês utilizam alguma ferramenta para "compilar/rodar", como o Visualg ou Portugol Studio etc, ou é feito no "papel" mesmo"?

adicionado 10 minutos depois

Faltou também responder:

2 horas atrás, Simon Viegas disse:

Quais os assuntos que já estou?   já estudou vetores?

adicionado 21 minutos depois

 

 

Abaixo ajustei o código para fazer a leitura de uma pessoa, segue:


algoritmo "ENTREVISTA"
var
   //DADOS DO ENTREVISTADO
   nome         :caractere
   idade        :caractere
   sexo         :caractere
   qtdDeFilhos  :inteiro    //obs.: variáveis não podem ter espaços!!!
   rendaFamiliar:real



inicio
escreval("INFORMA OS DADOS DO ENTREVISTADO")
//OBSERVAÇÃO: perceba que "escreve na tela" e "ler um dado do teclado" são
//            etapas distintas
escreva ("Nome           : ")
leia(nome)
escreva ("Idade          : ")
leia(idade)
escreva ("Sexo (M ou F)  : ")
leia(sexo)
escreva ("Qdt. de filhos : ")
leia(qtdDeFilhos)
escreva ("Renda familiar : R$ ")
leia(rendaFamiliar)








fimAlgoritmo
{
Para esta atividade MAPA queremos que você exercite o conteúdo que está sendo
apresentado na disciplina. Sendo assim: Escreva um algoritmo que faça a
entrevista de 20 pessoas.

Seu algoritmo em Portugol deve conter os seguintes requisitos:
I. Realizar a leitura dos seguintes dados, para cada uma das 20 pessoas:
   - Nome.
   - Idade.
   - Sexo.
   - Quantidade de filhos.
   - Renda mensal familiar.

Obs.: Sair do laço de repetição se um nome não for preenchido, mesmo se não
atingir 20 pessoas.

II. Com base nos dados coletados, apresente na tela as seguintes informações:
     - Percentual de mulheres e homens.
     - Número de pessoas com renda familiar de 500.00 (quinhentos reais) ou
     acima.
     - Percentual de pessoas que tem ao menos 1 filho.
     - Número de pessoas que nasceram a partir do ano 2000.
}

Nesse caso, a sintaxe está voltada para o Visualg... mas a "base é mesma"... a depender, fazer alguns ajustes para o "programa" usado, ou das características do Portugol que está estudando.

adicionado 24 minutos depois

 

Perceba que inicialmente só está tendo ler os dados de uma pessoa... para testar se está funcionando, poderia exibi-los.

Desta forma, sugiro que pegue esse código e insira um trecho para apenas exibir os dados, ou seja, a parte de ler os dados já está meio que pronta, ai, faria exibir esses dados na tela para ver se leu certo ou não...


Só depois, mais pra vemos, damos continuidade.

 

No aguardo.

  • Curtir 2

Compartilhar este post


Link para o post
Compartilhar em outros sites
Postado (editado)

@Simon Viegas Visualg. Porém, estou treinando no bloco de notas ou no caderno. Quero me adaptar e entender primeiro antes de compilar ou usar o software. Estou na base da leitura e teste com papel e caneta.

Editado por allanalencar
...
  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites
agora, allanalencar disse:

Visualg. Porém, estou treinando no bloco de notas ou no caderno. Quero me adaptar e entender primeiro antes de compilar ou usar o software. Estou na base da leitura e teste com papel e caneta.


Sugiro que vá logo pro Visualg... o Visual também "é um  bloco de notas", a diferença que pode fazer rodar!!!

No caso, implemente a exibição dos dados... algo como deixar assim:

tela.jpg

 

Ou seja, primeiro leu os dados, depois, apenas exibiu eles na tela.

No aguardo.

 

  • Curtir 3

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sugiro que vá para o VisualG. Tem a vantagem de poder ver como as variáveis estão alocadas na memória e também de executar linha a linha.

  • Curtir 2

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Simon Viegas @Ricardov

 

Obrigado pelas dicas. Vou direto pro Visualg e vou seguir as dicas sugeridas. Vou postar aqui para vocês analisarem a evolução.

 

Muito obrigado mesmo. Gostei do estímulo ao invés de apenas responder o questionamento.  Muito válido a metodologia que vcs usam.

 

 

  • Curtir 3

Compartilhar este post


Link para o post
Compartilhar em outros sites
Postado (editado)

Mas galera, nesse caso, qual seria o método para as 20 pessoas? eu teria de repetir o processo a baixo 20 vezes?

escreval("INFORMA OS DADOS DO ENTREVISTADO")
//OBSERVAÇÃO: perceba que "escreve na tela" e "ler um dado do teclado" são // etapas distintas
escreva ("Nome : ")
leia(nome)
escreva ("Idade : ")
leia(idade)
escreva ("Sexo (M ou F) : ") l
leia(sexo)
escreva ("Qdt. de filhos : ")
leia(qtdDeFilhos)
escreva ("Renda familiar : R$ ")
leia(rendaFamiliar)
adicionado 4 minutos depois

e qual seria o método utilizado para sair do laço de repetição caso um nome não seja preenchido? uma condição?
ex:

{Se ( nome =  0 ) então
                         escreval ("preencha o nome")

}

 

Algo assim? e onde colocaria essa condição? após os 20 cadastros?

Editado por Simon Viegas
Inserir o código com o botão CODE <>
  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites
Postado (editado)

@Erick Corrêa

 

Para repetir 20 vezes você pode utilizar um vetor. 

 

Para sair do laço você pode perguntar após cada dado cadastrado se o usuário quer continuar ou não, entende?

 

*Cadastrou*

Gostaria de cadastrar outra pessoa?[S/N]  (algo assim)

 

Se responder S, o laço continua, se responder N, o laço para.

Editado por Niê
  • Curtir 1
  • Obrigado 1
  • Amei 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Niê

Acho que por eu não ter visto essa questão de vetor estou me confundindo e travando nessa parte... Por isso eu usaria dessa forma, repetindo isso por 20 vezes e depois relacionando tudo para tirar as médias e afins... o que ficaria feio e desnecessário!

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Erick Corrêa Editei meu comentário, atualiza e da uma olhada.

  • Curtir 2

Compartilhar este post


Link para o post
Compartilhar em outros sites
6 minutos atrás, Niê disse:

@Erick Corrêa

 

Para repetir 20 vezes você pode utilizar um vetor. 

 

Para sair do laço você pode perguntar após cada dado cadastrado se o usuário quer continuar ou não, entende?

 

*Cadastrou*

Gostaria de cadastrar outra pessoa?[S/N]  (algo assim)

 

Se responder S, o laço continua, se responder N, o laço para.

Compreendi, no caso o cadastro anterior ficaria na "memória" e surgiria uma "aba" nova com os campos vazios a serem preenchidos, ai então eu poderia inserir as fórmulas para contabilizar as medias e tudo mais e o sistema buscaria na memória e tiraria a média das 20 pessoas?

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites
Postado (editado)
Em 15/05/2018 às 21:38, allanalencar disse:

Obs.: Sair do laço de repetição se um nome não for preenchido, mesmo se não atingir 20 pessoas.

Não havia visto isso, me desculpe.

 

Você fará uso do comando "interrompa". 

se (nome=0) então
escreval ("Nome inválido!")
interrompa

Isso você terá que usar depois de cada leia. uhauhauh, é chato e vai ficar grande, mas eu só consegui pensar nesse método. Vê e funciona aí.

 

Se não funcionar, desculpa, não tenho como testar e sou novo nisso também, kkkkkkk!

Editado por Niê
  • Curtir 1
  • Haha 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Niê Pois é, vai ficar enorme mesmo, mas eu também não consigo pensar em outra forma, e eu preciso que o código todo caiba em no máximo 3 folhas( do word ou pdf), mas ainda assim acho que da certo, eu vou dar uma estudada e aplicar essas coisas e ver como fica!

adicionado 6 minutos depois

então seria basicamente isso ?

escreval("INFORMA OS DADOS DO ENTREVISTADO")
//OBSERVAÇÃO: perceba que "escreve na tela" e "ler um dado do teclado" são // etapas distintas
escreva ("Nome : ")
leia(nome)
   Se (nome=0) então
   escreval ("Campo não preenchido!")
   interrompa
escreva ("Idade : ")
leia(idade)
   Se (idade=0) então
   escreval ("Campo não preenchido!")
   interrompa
escreva ("Sexo (M ou F) : ") 
leia(sexo)
   Se (sexo=0) então
   escreval ("Campo não preenchido!")
   interrompa
escreva ("Qtd. de filhos : ")
leia(qtdDeFilhos)
   Se (qtdDeFilhos=0) então
   escreval ("Campo não preenchido!")
   interrompa
escreva ("Renda familiar : R$ ")
leia(rendaFamiliar)
   Se (rendaFamiliar=0) então
   escreval ("Campo não preenchido!")
   interrompa

 

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Erick Corrêa  Na real, Erick, você pode por se (nome = "") que funciona, com o 0 não funciona.

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Niê é, eu tava pensando nisso mesmo, porque com o zero pode dar conflito!
Obrigado pelas dicas cara, serão bem úteis, mas ainda to formulando como fazer isso tudo, a questão de vetores e laços não ficou muito claro, vou dar uma estudada sobre isso e dar continuidade!

 

  • Curtir 2

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá @Erick Corrêa.

Sobre:

1 hora atrás, Erick Corrêa disse:

Mas galera, nesse caso, qual seria o método para as 20 pessoas? eu teria de repetir o processo a baixo 20 vezes?

 

Você já conseguiu fazer com um?

 


Para mim, seu objetivo atual é fazer isso:

Em 16/05/2018 às 12:49, Simon Viegas disse:

No caso, implemente a exibição dos dados... algo como deixar assim:

tela.jpg

 

Ou seja, primeiro leu os dados, depois, apenas exibiu eles na tela.

No aguardo.

 


Já conseguiu fazer?

Poste seu código atual e onde está com dúvidas.


Veja, não adianta tentar fazer com N vezes se não conseguiu fazer com 1!!! É como tentar correr antes de aprender a andar... é complicado.
 

obs.: esse exercício não necessariamente precisa de vetor... pode fazer com ou seu ele. Apenas poste o código como sugerir acima... que as coisas vão andar..

 

No aguardo.

 

  • Curtir 1
  • Amei 2

Compartilhar este post


Link para o post
Compartilhar em outros sites
Algoritmo "Entrevista"
Var
   nome  : caractere
   idade : caractere
   sexo  : caractere
   filhos: inteiro
   rendaf: real



Inicio
   escreval ("DIGITE OS DADOS DO ENTREVISTADO")
   escreva ("Nome          :")
   leia(nome)
   escreva ("Idade         :")
   leia(idade)
   escreva ("Sexo [M ou F] :")
   leia(sexo)
   escreva ("Filhos        :")
   leia(filhos)
   escreva ("Renda Familiar:R$")
   leia(rendaf)
   
   escreval("")
   escreval("")
   
   escreval ("DADOS CADASTRADOS")
   escreval("Nome          :",    nome)
   escreval("Idade         :",   idade)
   escreval("Sexo          :",    sexo)
   escreval("Filhos        :",  filhos)
   escreval("Renda familiar:R$",rendaf)
   


Fimalgoritmo

Fiz dessa forma, deu certo, porém eu preciso agora saber se eu faço igualmente para as 20 pessoas com um ctrl+c ctrl+v ou se tem alguma forma diferente para isso, para que depois eu possa aplicar as formulas para calcular médias e o que se pede no enunciado...

ENTREVISTA.png

adicionado 4 minutos depois

E como eu uso o laço de repetição? pra poder sair do laço de repetição se um nome não for preenchido, mesmo se não atingir 20 pessoas...

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites
Postado (editado)

@Erick Corrêa    os laços de repetição são   o para  o enquanto e o repita , e nesse código  que você postou , não tem nenhum laço de repetição , então se você usar o laço de  repetição para , e caso  na hora que pedir para digitar o nome e o usuário não digitar nada e apenas teclar enter  ele sair do laço você pode colocar assim e dentro do laço faça os cálculos a cada pessoa pesquisada  :

Algoritmo "Entrevista"
Var
   nome  : caractere
   idade : caractere
   sexo  : caractere
   filhos,j,homem,mulher,renda_acima_500 : inteiro
   pessoas_com_filho, nasc_2000          : inteiro
   rendaf: real
Inicio
  para j de 1 ate 20 faca
    escreval ("DIGITE OS DADOS DO ENTREVISTADO")
    escreva ("Nome ou Tecle Enter Para Sair :")
    leia(nome)
    se compr(nome)=0 ENTÃO
      interrompa
    fimse
    escreva ("Idade         :")
    leia(idade)
    escreva ("Sexo [M ou F] :")
    leia(sexo)
    se sexo="m" ENTÃO
      homem:=homem+1
    senao
      se sexo="f" ENTÃO
        mulher:=mulher+1
      fimse
    fimse
    escreva ("Filhos        :")
    leia(filhos)
    escreva ("Renda Familiar:R$")
    leia(rendaf)
    escreval("")
    escreval("")
    escreval ("DADOS CADASTRADOS")
    escreval("Nome          :",    nome)
    escreval("Idade         :",   idade)
    escreval("Sexo          :",    sexo)
    escreval("Filhos        :",  filhos)
    escreval("Renda familiar:R$",rendaf)
  fimpara
  escreval("o total de homens  é ",homem)
  escreval("o total de mulhers é ",mulher)
Fimalgoritmo

seguindo esse exemplo faça as outras opções  .

 

Editado por devair1010
  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Erick Corrêa    sim ,  o laço de repetição precisa de uma variável de controle e essa variável pode ser qualquer palavra ou letra que você queira . e esse   "  j  "  é essa variável  que controla o laço .

Compartilhar este post


Link para o post
Compartilhar em outros sites

Po cara, agora fechou, era isso que eu precisava, muito obrigado, agora só vou alterar algumas coisas, pois eu preciso da porcentagem de homens e mulheres e não apenas da quantidade separada, mas isso eu altero no código e boa, de resto eu vou me virando aqui, muito obrigado!!! @devair1010

adicionado 5 minutos depois

@devair1010 cara, última coisa, como eu posso fazer pra calcular essa porcentagem das duas variáveis? na matemática eu faria uma regra de três, mas como eu aplico isso no visualG?

  • Obrigado 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário






Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×