Oi Giovana! Tudo tranquilo por aí?
O seu código está funcionando. E ficou interessante o modo como você fez tudo por meio de funções.
Mas tem alguns pontos que podemos melhorar e corrigir, vamos lá:
No caso da função pedirIdades, temos:
function pedirIdades(){
idade1 = prompt('Digite a idade do seu irmão:');
idadeEu = prompt('Digite sua idade:');
diferencaIdade = (idade1 - idadeEu);
}
Nesse caso, você precisará da variável diferencaIdade na outra função exibeResultado, certo? Para que você utilize essa variável nessa outra função é interessante que no final de pedirIdades você retorne a variável diferencaIdade.
function pedirIdades(){
idade1 = prompt('Digite a idade do seu irmão:');
idadeEu = prompt('Digite sua idade:');
diferencaIdade = (idade1 - idadeEu);
return diferencaIdade;
}
Essa funcionalidade de retornar variáveis de uma função será explicada de maneira mais detalhada nas próximas aulas do curso. Mas basicamente, o que ela faz é devolver o valor da variável quando a função for chamada em outro lugar.
Agora, no caso da função exibeResultado:
function exibeResultado(){
pedirIdades
mostra( 'A idade de meu irmão é: ' + idade1);
mostra( 'A minha idade é: ' + idadeEu);
if (diferencaIdade == 1){
mostra('Nossa diferença de idade é de um ano.');
}
else{
document.write('Nossa diferença de idade é de: ' + diferencaIdade + " anos.");
}
É importante que sempre que for chamar uma função você utilize os parênteses, ficando assim: pedirIdades();
. Além disso, agora que adicionamos o comando return na função de pedirIdades
, quando ela for chamada, ela irá enviar a variável diferençaIdade
, certo?
Sendo assim, o ideal seria declarar uma nova variável na função exibeResultado()
para que ela receba o valor que será retornado pela função pedirIdades
, quando for chamada. Essa variável pode ter qualquer nome, inclusive pode ter o mesmo nome da variável diferençaIdade
da função que pede as idades. Vamos chamá-la de recebeDiferencaIdade
:
function exibeResultado(){
var recebeDiferencaIdade = pedirIdades();
mostra( 'A idade de meu irmão é: ' + idade1);
mostra( 'A minha idade é: ' + idadeEu);
if (recebeDiferencaIdade == 1){
mostra('Nossa diferença de idade é de um ano.');
}
else{
document.write('Nossa diferença de idade é de: ' + recebeDiferencaIdade + " anos.");
}
E por fim, como você já está chamando a função pedirIdades
dentro da função exibeResultado
, não é necessário que você chame ela novamente embaixo, sendo necessário chamar apenas a exibeResultado, ficando assim:
\\ codigo anterior
exibeResultado();
</script>
O professor fez de uma maneira diferente, utilizando menos funções, caso queira ver basta clicar em " Ver opinião do instrutor ":
Continue sempre praticando. Qualquer dúvida estaremos por aqui :)
Bons estudos!