Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

[Projeto] Variáveis

Legal aprender como arredondar cálculos aritméticos

`Math.round`

Muito bom!!!

Hoje, o Sublime pediu atualização e, a surpresa... após atualizar, pediu a licença de registro.

Como já tinha instalado o Geany, vou seguir o curso com este IDE, software livre. Acho que vou conseguir realizar os projetos e exercícios.

Aqui está o código desta aula:

<meta charset="UTF-8">
<script>

   var ano = 2016;

   document.write("Flavio tem " + (ano - 1977) + " anos" );
   document.write("<br>");
   document.write("Joaquim tem " + (ano - 1996) + " anos" );
   document.write("<br>");

   ano = 2017;
   document.write("Barney tem " + (ano - 1976) + " anos" );
   document.write("<br>");

   var idadeFlavio = ano - 1977;
   var idadeJoaquim = ano - 1996;
   var idadeBarney = ano - 1976;

   var media = (idadeFlavio + idadeJoaquim + idadeBarney)/3;

   document.write( 'A média das idades é de ' +  Math.round (media) + " anos." );
   document.write("<br>");

   var nome = "Flávio";

   document.write("A idade de " + nome + " é " + idadeFlavio + " anos.");
   document.write("<br>");

   nome = "Joaquim";

   document.write("A idade de " + nome + " é " + idadeJoaquim + " anos.");
   document.write("<br>");

   var nome = "Barney";

   document.write("A idade de " + nome + " é " + idadeBarney + " anos.");
   document.write("<br>");

</script>
4 respostas

Não conheço o Geany, vou dar uma olhada!

solução!

Olá, Lívia!

Que legal, veja sim.

Eu conhecia o Geany, mais ainda não tinha usado.

Estou gostando, é bem leve e eficiente.

Acho que irá gostar também.

Abs e bons estudos!!

Olá eu copiei o código, porém quando eu altero o valor do ano, só muda as idades, o valor da média não altera, será que tem algum problema com o código?

Olá, Rodrigo!!

Tudo joinha?

Muito bem observado, Rodrigo!

O código tem erro mesmo.

Mas qual será o erro?

Você conseguiu perceber onde está?

Bom, vamos por partes.

Aqui, rodei o programa com o código desta postagem e a saída no navegador foi esta aqui:

Flavio tem 39 anos
Joaquim tem 20 anos
Barney tem 41 anos
A média das idades é de 34 anos.
A idade de Flávio é 40 anos.
A idade de Joaquim é 21 anos.
A idade de Barney é 41 anos.

Ok, este código foi gerado na aula anterior e serviu para o professor demonstrar o uso de variáveis, como declarar e atribuir valor, como alterar o valor que a variável recebe, coisas assim.

Podemos observar que na linha 11 do código o professor reatribuiu o valor da variável ano para 2017.

Isso ele fez antes de declarar o comando que exibe a idade de Barney, justamente para demonstrar como o JavaScript percorre o código, lendo os comandos e realizando as ações. Nas idades de Flávio e Joaquim ano recebe o valor 2016, já para Barney ano recebe 2017.

Acredito que este detalhe tenha passado desapercebido. Tanto que a idade de Barney, na verdade, não é 41 anos e sim 40, já que ele nasceu em 1976, sendo apenas um ano mais velho do que Flávio, que tem 39 anos e nasceu em 1977.

Retirando esta reatribuição da variável ano (linha 11) o código volta a funcionar corretamente, os cálculos ficam certos, a saída no navegador fica coerente e este "ajuste" não atrapalha a demonstração pretendida pelo professor a esta aula.

Assim será possível alterar o valor da variável ano e todos os cálculos também serão alterados automagicamente.

O código ficaria assim:

<meta charset="UTF-8">
<script>

   var ano = 2016;

   document.write("Flavio tem " + (ano - 1977) + " anos" );
   document.write("<br>");
   document.write("Joaquim tem " + (ano - 1996) + " anos" );
   document.write("<br>");
   document.write("Barney tem " + (ano - 1976) + " anos" );
   document.write("<br>");

   var idadeFlavio = ano - 1977;
   var idadeJoaquim = ano - 1996;
   var idadeBarney = ano - 1976;

   var media = (idadeFlavio + idadeJoaquim + idadeBarney)/3;

   document.write( 'A média das idades é de ' +  Math.round (media) + " anos." );
   document.write("<br>");

   var nome = "Flávio";
   document.write("A idade de " + nome + " é " + idadeFlavio + " anos.");
   document.write("<br>");

   nome = "Joaquim";
   document.write("A idade de " + nome + " é " + idadeJoaquim + " anos.");
   document.write("<br>");

   nome = "Barney";
   document.write("A idade de " + nome + " é " + idadeBarney + " anos.");
   document.write("<br>");

</script>

E a saída no navegador ficaria assim:

Flavio tem 39 anos
Joaquim tem 20 anos
Barney tem 40 anos
A média das idades é de 33 anos.
A idade de Flávio é 39 anos.
A idade de Joaquim é 20 anos.
A idade de Barney é 40 anos.

Alterando o ano para 2022, a saída no navegador será:

Flavio tem 45 anos
Joaquim tem 26 anos
Barney tem 46 anos
A média das idades é de 39 anos.
A idade de Flávio é 45 anos.
A idade de Joaquim é 26 anos.
A idade de Barney é 46 anos.

Acho que é isso!!

Novamente, parabéns por seu olhar atento, programar é isso.

Abs e bons estudos!!