Foi realizada uma pesquisa sobre algumas características físicas de 100 habitantes de uma região. Foram coletados os seguintes dados de cada habitante: Sexo (M – masculino ou F – feminino), Cor dos olhos (A – azuis ou C – castanhos), Cor dos cabelos (L – louros, P – pretos ou C – castanhos), Idade. Faça uma função que leia estes dados, armazenando-os em vetores. Faça uma função que determine e devolva ao programa principal a média das idades das pessoas com olhos castanhos e cabelos pretos. Faça uma função que determine e devolva ao programa principal a quantidade de indivíduos do sexo feminino com idade entre 18 e 35 anos e que tenham cabelos louros. O programa principal deve apresentar todos os resultados devolvidos (retornados).
Para resolver esse exercício devemos utilizar nosso conhecimento em estrutura de dados e algoritmos.
Segue abaixo um esboço em JS de como seria esse programa.
/*
habitante:
Sexo (M – masculino ou F – feminino),
Cor dos olhos (A – azuis ou C – castanhos),
Cor dos cabelos (L – louros, P – pretos ou C – castanhos),
Idade.
*/
habitante={
Sexo:'M',
CorOlhos:'C',
CorCabelos: 'C',
Idade: 27
};
function ProgramaPrincipal(){
TodosPesquisados = new Array();
ColetarDados(TodosPesquisados);
imprimeArray( MediaIdadeOlhosCastanhosCabelosPretos(TodosPesquisados) );
imprimeArray( FemininoLourosIDade(TodosPesquisados) );
}
function ColetarDados(VetorHabitantes){
sair = false;
while(!sair){
hab = new habitante;
imprimeNaTela("Digite a letra correspondente ao sexo ");
imprimeNaTela("Sendo M – masculino ou F – feminino");
hab.sexo = capturaTextodigitado();
imprimeNaTela("Digite a letra correspondente a cor dos olhos");
imprimeNaTela("Sendo A – azuis ou C – castanhos");
hab.CorOlhos = capturaTextodigitado();
imprimeNaTela("Digite a letra correspondente a cor do cabelo");
imprimeNaTela("Sendo L – louros, P – pretos ou C – castanhos");
hab.CorCabelos = capturaTextodigitado();
imprimeNaTela("Digite a idade: ");
hab.Idade = capturaTextodigitado();
//adiciona no vetor passado como paramentro o novo habitante cadastrado
VetorHabitantes.put(hab);
imprimeNaTela("Digite 1 se deseja encerrar os cadastros");
s = capturaTextodigitado();
if(s === 1 || s === "1"){
sair = true;
}
}
};
function MediaIdadeOlhosCastanhosCabelosPretos(VetorHabitantes) {
somaIdades = 0;
qtdHab = 0;
for (hab in VetorHabitantes) {
if(hab.CorOlhos.toUpperCase() =='C'){
if(hab.CorCabelos.toUpperCase() == 'C'){
somaIdades = somaIdades + hab,Idade;
qtdHab ++
}
}
}
resultado = somaIdades / qtdHab;
return resultado;
}
function FemininoLourosIDade(VetorHabitantes) {
qtdHab = 0;
for (hab in VetorHabitantes) {
if(hab.sexo.toUpperCase() =='F'){
if( (hab.Idade >= 18) && (hab.Idade <= 35) ){
if(hab.CorCabelos.toUpperCase() == 'L'){
qtdHab ++
}
}
}
}
return qtdHab;
}
function imprimeArray(arr){
console.table(arr); //implemente apresentacao em tela de acordo com sua linguagem
//poderia ser System.out, printf etc dependendo da linguagem terá que fazer um laço
//de repetiçao para cada elemento do array/vetor
}
function imprimeNaTela(texto){
//codigo para imprimir a variavel texto na tela System.out, printf e etc
};
function capturaTextodigitado(){
// codigo para captura do usuario Scanner, System.in ou Scanf etc
return captura;
};
Concluímos que o exercício exigia conhecimentos em manipulação de vetores/arrays, além de ferramentas par capturar dados do usuário bem como apresentar os resultados em tela.
Para resolver esse exercício devemos utilizar nosso conhecimento em estrutura de dados e algoritmos.
Segue abaixo um esboço em JS de como seria esse programa.
/*
habitante:
Sexo (M – masculino ou F – feminino),
Cor dos olhos (A – azuis ou C – castanhos),
Cor dos cabelos (L – louros, P – pretos ou C – castanhos),
Idade.
*/
habitante={
Sexo:'M',
CorOlhos:'C',
CorCabelos: 'C',
Idade: 27
};
function ProgramaPrincipal(){
TodosPesquisados = new Array();
ColetarDados(TodosPesquisados);
imprimeArray( MediaIdadeOlhosCastanhosCabelosPretos(TodosPesquisados) );
imprimeArray( FemininoLourosIDade(TodosPesquisados) );
}
function ColetarDados(VetorHabitantes){
sair = false;
while(!sair){
hab = new habitante;
imprimeNaTela("Digite a letra correspondente ao sexo ");
imprimeNaTela("Sendo M – masculino ou F – feminino");
hab.sexo = capturaTextodigitado();
imprimeNaTela("Digite a letra correspondente a cor dos olhos");
imprimeNaTela("Sendo A – azuis ou C – castanhos");
hab.CorOlhos = capturaTextodigitado();
imprimeNaTela("Digite a letra correspondente a cor do cabelo");
imprimeNaTela("Sendo L – louros, P – pretos ou C – castanhos");
hab.CorCabelos = capturaTextodigitado();
imprimeNaTela("Digite a idade: ");
hab.Idade = capturaTextodigitado();
//adiciona no vetor passado como paramentro o novo habitante cadastrado
VetorHabitantes.put(hab);
imprimeNaTela("Digite 1 se deseja encerrar os cadastros");
s = capturaTextodigitado();
if(s === 1 || s === "1"){
sair = true;
}
}
};
function MediaIdadeOlhosCastanhosCabelosPretos(VetorHabitantes) {
somaIdades = 0;
qtdHab = 0;
for (hab in VetorHabitantes) {
if(hab.CorOlhos.toUpperCase() =='C'){
if(hab.CorCabelos.toUpperCase() == 'C'){
somaIdades = somaIdades + hab,Idade;
qtdHab ++
}
}
}
resultado = somaIdades / qtdHab;
return resultado;
}
function FemininoLourosIDade(VetorHabitantes) {
qtdHab = 0;
for (hab in VetorHabitantes) {
if(hab.sexo.toUpperCase() =='F'){
if( (hab.Idade >= 18) && (hab.Idade <= 35) ){
if(hab.CorCabelos.toUpperCase() == 'L'){
qtdHab ++
}
}
}
}
return qtdHab;
}
function imprimeArray(arr){
console.table(arr); //implemente apresentacao em tela de acordo com sua linguagem
//poderia ser System.out, printf etc dependendo da linguagem terá que fazer um laço
//de repetiçao para cada elemento do array/vetor
}
function imprimeNaTela(texto){
//codigo para imprimir a variavel texto na tela System.out, printf e etc
};
function capturaTextodigitado(){
// codigo para captura do usuario Scanner, System.in ou Scanf etc
return captura;
};
Concluímos que o exercício exigia conhecimentos em manipulação de vetores/arrays, além de ferramentas par capturar dados do usuário bem como apresentar os resultados em tela.
Para escrever sua resposta aqui, entre ou crie uma conta
Compartilhar