• Matéria: Informática
  • Autor: alexvsantos96
  • Perguntado 6 anos atrás

Uma rede de cinemas quer implementar um sistema para controlar a entrada nas suas salas. Os clientes, antes de entrar na sala, devem apresentar o RG em uma câmera. A câmera seria capaz de ler a data de nascimento do cliente e, caso ele não tenha idade suficiente para assistir a sessão, o acesso dele não seria autorizado.

Um dos programadores já fez uma função que calcula a idade com base na data de nascimento. Ela recebe como parâmetro uma data de nascimento no formato dd/mm/aaaa (dia com dois dígitos, mês com dois dígitos e ano com quatro dígitos) e retorna idade da pessoa hoje.


Precisamos agora que você escreva a função deixaEntrar(dataDeNascimento, censura).


A função deve receber dois parâmetros:

O primeiro deve representar a data de nascimento do cliente no formato dd/mm/aaaa


O segundo deve representar a censura da sessão, ou seja, a idade mínima do cliente para que ele possa acessar a sala.


A função deve retornar true caso o cliente tenha idade maior ou igual a censura e false caso contrário.

```
// A função a seguir (calculaIdade) não precisa ser alterada
// A sua função deve ser escrita logo abaixo desta
function calcularIdade(dataDeNascimento) {
if(!/^\d{2}\/\d{2}\/\d{4}$/.test(dataDeNascimento)) throw("Formato de data inválido");
var [dia, mes, ano] = dataDeNascimento.split('/');
var d = new Date();
var anoAtual = d.getFullYear();
var mesAtual = d.getMonth() + 1;
var diaAtual = d.getDate();
ano = +ano; mes = +mes; dia = +dia;
var quantosAnos = anoAtual - ano;
if (mesAtual < mes || mesAtual == mes && diaAtual < dia) {
quantosAnos--;
}
return quantosAnos < 0 ? 0 : quantosAnos;
}
// Escreva aqui sua função


anomelio93: Qual linguagem ?
harlemmuniz13: function deixaEntrar(dataDeNascimento, censura) {
return calcularIdade() > censura ? true : false
}

Fiz dessa forma e aqui deu certo
rodrigovieirapublic: function deixaEntrar(dataDeNascimento, censura) {

var idade = calcularIdade(dataDeNascimento)

return(idade>=censura)

}

dataDeNascimento = "09/11/1988"

censura = 22

console.log(deixaEntrar(dataDeNascimento, censura))
glessac: function deixaEntrar(dataDeNascimento, censura) {
return calcularIdade() < censura;
}

Respostas

respondido por: diotattoo
5

Resposta:

function deixaEntrar(dataDeNascimento, censura) {

 var idade = calcularIdade(dataDeNascimento)

  if (idade > censura) {

   return true

 }else{

  return false

 }

}

//Dados para teste

dataDeNascimento = "11/05/1999"

censura = 12

console.log(deixaEntrar(dataDeNascimento, censura))

Explicação:

A função 'deixaEntrar()' recebe os parametros *os dados usados no teste, por exemplo)

dentro dela , a variavel criada 'idade' recebe o valor retornado pela funcao 'calcularIdade' , que passa o parametro 'dataDeNascimento'

Então a condicional if verifica se a idade é maior que a censura informada.


fabiojrfla: function deixaEntrar(dataDeNascimento, censura){
calcularIdade() >= censura
}
bernardopiero12: Essa eu fiz e deu certo na minha ide, mas no site não funciona. Mais alguém com esse problema?
diotattoo: Funcionou sim... verifica se está retornando corretamente.
function deixaEntrar(dataDeNascimento, censura){
var idade = calcularIdade(dataDeNascimento)
return (idade > censura)
}
fernandoagostini28: eu fiz assim e deu function deixaEntrar(dataDeNascimento, censura){
var aux = calcularIdade(dataDeNascimento)


return (aux >= censura)
}
respondido por: eadaprendiz
12

Resposta:

function deixaEntrar(dataDeNascimento, censura) {

   return calcularIdade(dataDeNascimento, censura);

}

Explicação:

Basta você fazer sua função "deixarEntrar()" e acrescentar a função do programador "calcularIdade()", lembrando-se de inserir os parâmetros em ambas funções.


elaiinesimionato: Amei, Muito obrigado
bernardopiero12: Essa eu fiz e deu certo na minha ide, mas no site não funciona. Mais alguém com esse problema?
diotattoo: Verifica se está retornando corretamente o valor com algum console.log()

function deixaEntrar(dataDeNascimento, censura){
var idade = calcularIdade(dataDeNascimento)
return (idade > censura)
}
taianesilvasp: O meu ta dando erro
carolinesilva115: Essa solução tá certa? Pq a calculaIdade só recebe um parâmetro que seria a data de nascimento...Na solução acima, temos 2 parâmetros (data de nas e censura)...Não entendi
Perguntas similares