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

Exercício Problema das gerações

pq as letras ficam coladas do número ?

Não consegui arredondar usando o Math.round :(

![](Insira aqui a descrição dessa imagem para ajudar na acessibilidade )

<meta charset="UTF-8">

<script>
function pulaLinha() {
document.write("<br>");
}

function mostra (frase) {
document.write (frase);

}

var titulo = "O problema das gerações";
var portuguesesChegaramNoBrasil = 1500;
var anoAtual = 2022;
var mediaDeAnos = 28;
document.write("<h1>" + titulo + "</h1>");
pulaLinha();

mostra("desde a descoberta do Brasil em" + portuguesesChegaramNoBrasil + "a geração é de " + mediaDeAnos + "anos" + "Passaram"  +  (anoAtual-portuguesesChegaramNoBrasil + "anos"))
pulaLinha();
mostra("A média de idade desde então é" + Math.round(portuguesesChegaramNoBrasil - anoAtual) / mediaDeAnos + "anos");

</script>
2 respostas
solução!

Bom dia. Respondendo a primeira pergunta, quando você faz a concatenação dos números e letras, ou seja, junta eles, ele não da espaço, então para corrigir isto, você pode colocar um espaço antes das aspas, por exemplo:

"desde a descoberta do Brasil em " + portuguesesChegaramNoBrasil

Perceba que na string, depois da palavra 'em', e antes de fechar as aspas, eu coloquei um espaço vazio, e dessa forma vai dar certo. Você pode fazer isto no começo da string também, ou seja, " desde a descoberta...", perceba que depois das aspas, e antes da palavra 'desde', eu coloquei um espaço.

A respeito do Math.round, ele não está funcionando porquê você está fechando os parênteses dele antes de terminar a operação. Perceba que ele não cobre a divisão pela mediaDeAnos, para consertar isto, você pode incluir um novo parênteses, dessa forma:

mostra("A média de idade desde então é " + Math.round((anoAtual - portuguesesChegaramNoBrasil) / mediaDeAnos) + " anos")

Agora ele tem os parênteses tanto do Math.round, cobrindo toda a equação, como o parênteses para dar prioridade a conta de subtração. Além disso, perceba que eu inverti as variáveis anoAtual e portuguesesChegaramNoBrasil, pois da forma que estava, o valor dos anos ia vir negativo, já que 1500 - 2022 = - 522, ja 2022 - 1500 = 522, que é correto.

Espero ter ajudado.

Fiz do seu jeito e consegui. Muito Obrigada !