-
Posts
25 -
Cadastrado em
-
Última visita
Tipo de conteúdo
Artigos
Selos
Fabricantes
Livros
Cursos
Análises
Fórum
posts postados por Erick Corrêa
-
-
4 minutos atrás, Simon Viegas disse:
1#
Lembrar de mudar para 20. Está com 2.2#
Tome cuidado com as divisões por 0. Poderia fazer por exemplo:se contador <> 0 ENTÃO pfilho:=100*contadorf/contador ph:=100*homem/contador pm:=100*mulher/contador fimse
***No geral. O código está bom. Parabéns!
Ajustei de acordo com o indicado, realmente deixa tudo bem explícito ao que deve ser feito, o que o programa realmente deve seguir, sem falhas ou brechas para as mesmas!!
Obrigado galera!!
Até o próximo código!!
Abraço!
- 1
- 3
-
Segue, já ajustado:
Algoritmo "Entrevista" //Aluno: Erick Corrêa da silva //R.A.: 175.864-45 Var nome : caractere idade : inteiro sexo : caractere filhos,j, homem, mulher, rena_acime_500: inteiro nasc_2000 : inteiro rendaf: real contador, contadorf:real ph,pm,pfilho:real Inicio Para j de 1 ate 2 faca escreval ("DIGITE OS DADOS DO ENTREVISTADO") escreval ("Tecle ENTER para sair!") escreva ("Nome :") leia(nome) se compr(nome)=0 então interrompa fimse escreva ("Idade :") leia(idade) se idade < 19 então nasc_2000:=nasc_2000+1 fimse 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) se filhos > 0 então contadorf:=contadorf+1 fimse escreva ("Renda Familiar:R$") leia(rendaf) se rendaf >= 500.00 então rena_acime_500:=rena_acime_500+1 fimse limpatela contador:=contador+1 fimpara pfilho:=100*contadorf/contador ph:=100*homem/contador pm:=100*mulher/contador escreval("A porcentagem de homens e mulheres é respectivamente:",ph,"% e",pm,"%.") escreval("Pessoas com renda familiar acima de R$500,00:",rena_acime_500," pessoas.") escreval("Porcentagem de pessoas que tenham ao menos um filho:",pfilho,"%.") escreval("Pessoas que nasceram a partir do ano 2000:",nasc_2000,".") Fimalgoritmo
- 2
- 1
-
No caso serve pra otimizar o programa, é menos processamento, correto?
- 1
-
23 minutos atrás, Simon Viegas disse:
1#
Os cálculos das médias só precisam ser calculados uma vez, ou seja, devem ficar fora do for.Não entendi essa parte, tem algum cálculo que está "inútil" no código? @Simon Viegas
adicionado 39 minutos depoisRodando 100%, testado e aprovado, dados testados na mão batendo 100% com os dados fornecidos pelo programa!
Obrigado a todos envolvidos, agora vou partir para o projeto em linguagem C e irei criar um post e espero a ajuda de vocês, que além de esclarecedora e limpa, é muito útil, a paciência e disposição de vocês para ensinar e o método que utilizam, é incrível, estimulando o iniciante a entender.
Mais uma vez obrigado!!!- 3
-
Meu código ficou assim, acabei de testar com as 20 pessoas, 3 parâmetros funcionaram, o único que deu errado foi das pessoas que nasceram a partir/ em diante do ano 2000, ficou com o valor de 1.
Algoritmo "Entrevista" //Aluno: Erick Corrêa da silva //R.A.: 175.864-45 Var nome : caractere idade : caractere sexo : caractere filhos,j, homem, mulher, rena_acime_500: inteiro nasc_2000 : inteiro rendaf: real contador, contadorf:real ph,pm,pfilho:real Inicio Para j de 1 ate 20 faca escreval ("DIGITE OS DADOS DO ENTREVISTADO") escreval ("Tecle ENTER para sair!") escreva ("Nome :") leia(nome) se compr(nome)=0 então interrompa fimse escreva ("Idade :") leia(idade) se idade < 19 então nasc_2000:=nasc_2000+1 fimse 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) se filhos > 0 então contadorf:=contadorf+1 fimse escreva ("Renda Familiar:R$") leia(rendaf) se rendaf >= 500.00 então rena_acime_500:=rena_acime_500+1 fimse limpatela contador:=contador+1 pfilho:=100*contadorf/contador ph:=100*homem/contador pm:=100*mulher/contador fimpara escreval("A porcentagem de homens e mulheres é respectivamente:",ph,"% e",pm,"%.") escreval("Pessoas com renda familiar acima de R$500,00:",rena_acime_500, "pessoas.") escreval("Pessoas que tenham ao menos 1(um) filho:",pfilho,"%.") escreval("Pessoas que nasceram a partir do ano 2000:",nasc_2000,".") Fimalgoritmo
- 2
-
Sim, eu pensei dessa forma também, mas para esse tipo de informação teria que ser algo bem mais complexo e elaborado, o que eu acho que não seria o caso, se não seria pedido também a data de nascimento, assim eu poderia calcular utilizando o mês e determinar quem ja completou 19 anos ou não, assim dizendo que é dos anos 2000!
@Simon Viegas Logo eu posto, estou fazendo os últimos ajustes aqui e vou testar o código inteiro com as 20 pessoas, estava fazendo com o laço de 1 a 4 no máximo, para ser rápido...
- 2
-
Valeu cara, amanha posto o resultado do teste final...
- 1
-
Po, eu pensei dessa forma, mas achei que seria mt óbvio, ai eu fui tentando pela operação... isso parece mágica, ta loco bicho!
----Mas se eu colocar dessa forma, mesmo que eu coloque 45 ele vai contabilizar, porque está dizendo que "se idade for maior que 17 então adicione +1 a pessoas que nasceram após o ano 2000"... não faz sentido!
Não seria "se idade for <= a 18 então adicione +1 a nasc_2000" ??
----
Tentei agora com o <=18 e ele da um conflito, sempre conta 1 a mais, e nunca deixa ficar zerado, caso não tenha ninguém que nasceu nos anos 2000 ou após nos cadastros...
- 2
-
última dúvida, eu estou tentando colocar o cálculo das pessoas que nasceram após o ano de 2000, estou colocando assim e da erro de sintaxe (sintaxe incorreta):
escreva ("Idade :") leia(idade) nasc_2000=2018-idade
Ja deixei certo essa parte e tentei colocar a operação junto com as de porcentagem, e ainda da o mesmo erro de sintaxe incorreta!
leia(idade) se nasc_2000 >= 2000 então nasc_2000:=nasc_2000+1 fimse
- 1
-
@devair1010 cara que erro fútil, kkkkkkkkk agora foi, vou prestar mais atenção nisso, e quando me falaram que "o código nunca roda 100% de prima" eu não quis acreditar!!!
adicionado 9 minutos depoisAgora meu problema é nos filhos, ta sempre contando ou todos, ou ele zera... nesse caso aqui está zerando:
se filhos <0 então pessoas_com_filho:=pessoas_com_filho+1 fimse
- 2
-
Ela está declarada, mas está dando erro na hora que vai imprimir...
escreval("A porcentagem de homens e mulheres é respectivamente:",ph"% e" ,pm"%")
tirei os underlines achando que pudesse ser isso, mas as variáveis estão declaradas, tanto do contador como ph e pm, como "real" e depois que eu finalizo e ele contabiliza, da o erro na hora de imprimir ai...
- 1
-
Certo, agora o erro é de que a variável não foi encontrada, mesmo eu colocando a fórmula ali, como procedo?
ja tentei colocar após o "fimpara" e antes disso também, não sei onde posicionar ou o que está errado...
- 1
-
Sim, tanto a contador como as variáveis p_h e p_m estão como INTEIRO!
- 2
-
contador:=contador+1 fimpara p_h:=100*homem/contador p_m:=100*mulher/contador
Coloquei dessa forma, e no fim ele da o seguinte erro:
Erro na atribuição de valores à variável P_H:
REAL para INTEIRO.
O que estou fazendo errado?
- 2
-
@devair1010 Perfeito, sanei todas minhas dúvidas, agora é só indentar tudo e rodar pra ver, obrigado pela atenção, foi de imensa ajuda!!!
Tenha uma boa noite!!- 2
-
@devair1010 Compreendi, ja fiz o teste aqui, só preciso alinhar certinho e entender como funciona o contador! porque só colocar o código é fácil eu quero entender como ele funciona também!
adicionado 2 minutos depoisNo caso, porque tem que ser contador+1...e ele tem que ser posicionado dessa forma mesmo? antes do fimpara, sendo um contador incluso no laço, correto?
- 2
-
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?
- 1
-
Certo eu fiz dessa forma, mas queria saber o que seria o "j", é nome do laço de repetição? @devair1010
- 1
-
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...
adicionado 4 minutos depoisE 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...
- 1
-
@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!- 2
-
@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 depoisentã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
- 1
-
6 minutos atrás, Niê disse:
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?
- 1
-
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!
- 1
-
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 depoise 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?
- 1
Sobre o Clube do Hardware
No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades 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
Relatório de entrevistas de pessoas
em Programação - iniciantes
Postado
@Silent Rain sim, estou cursando na Unicesumar, você também?
Eu dei umas ajustadas a mais no código, questão de fórmulas e afins, porém não mexi mais, estou envolvido no de linguagem C agora!