Programar uma função filme que recebe três arrays com os nomes de personagens, filmes e ano de estréia no cinema. A função deve receber também um valor de id escolhido pelo usuário com intervalo de 1 até o tamanho máximo dos arrays fornecidos e retornar uma frase com o seguinte modelo: "personagem é um personagem do filme filme que estreou no cinema em lançamento." Se o valor de id for inválido, a função deve retornar a frase "Essa não é uma opção válida." toda vez que faço da erro alguém me ajuda por favor
Soluções para a tarefa
Resposta:
function filme(personagens, filmes, lancamentos, id)
{
if ((id > 0) && (id <= filmes.length)) {
var opt = id - 1;
return personagens[opt] + " é um personagem do filme " + filmes[opt] + " que estreou no cinema em " + lancamentos[opt] + ".";
}else{
return "Essa não é uma opção válida.";
}
}
Explicação:
É só seguir o enunciado. Não tem erro! A primeira condição que o programa estabelece é que o id seja válido. Para que ele seja válido, o seu tamanho mínimo deve ser 1 e também não deve ser maior que o tamanho dos arrays fornecidos. No código, observe que a primeira condição é essa: tratar o id. Muito bem! Se a condição de tratamento do id for verdadeira. Ou seja: se ele atender os requisitos, executaremos o restante do código. Senão for, ou seja, o id for inválido, retornaremos a mensagem de erro: "Essa não é uma opção válida!".
O restante do código se limita a construir a mensagem pedida caso o id seja válido. Como os arrays sempre começam pela posição 0(zero), se o id for 1 não pegará a posição correta. Por isso, devemos subtrair 1 unidade do id para acessar a posição correta dos arrays. A posição 0 do array é a primeira posição. Então, a campo 1 do array é a segunda. E assim por diante. Para resolver esse problema, foi criada uma outra variável que guardasse o id já subtraído. Agora assim! Acessando a posição correta é só concatenar todas as informações e retornar o valor.
Espero ter ajudado! Boa sorte no processo!
Resposta:
function filme(personagens, filmes, lancamentos, id)
{
if ((id > 0) && (id <= filmes.length)) {
var opt = id - 1;
return personagens[opt] + " é um personagem do filme " + filmes[opt] + " que estreou no cinema em " + lancamentos[opt] + ".";
}else{
return "Essa não é uma opção válida.";
}
}
Explicação: