Por quê meu loop for não funciona? Exercício focado no uso do operador %

Good night pessoas…
Tenho um exercício de loop for para encontrar os múltiplos de 3 entre o 42 e o 50 (inclusive), acredito que estou fazendo certo (baseado em respostas a outras dúvidas semelhantes já postadas), porém o loop não funciona. O output retorna todos os números entre 42 e 50, e não só os multiplos de 3. O alert que aparece é esse: “Remember the remainder operator? It might be of help to check if a number is a multiple of 3”.
O que será que está errado no meu código?

var number = 42;
var ceilNumber = 50;

for (var i = 42; i <= 50; i++) {
if (i % 3 == 0); {
console.log(i);
}
}

Eu coloquei um código que imprimiu os multiplos de 3 corretamente, mas não é a forma que querem que o exercício seja resolvido, e aparece esse alert: “You should use the third statement of the for loop to increment the variable i”.
Fiz assim:

var number = 42;
var ceilNumber = 50;

for (var i = 42; i <= 50; i += 3) {
console.log(i);
}

Valeu a quem puder dar uma força! :relaxed:

O erro está em colocar o “;” após o if.
O correto, usando as variáveis que você criou e não usou, seria:
var number = 42;
var ceilNumber = 50;

for (var i = number; i <= ceilNumber; i++) {
   // Verifica se o número é divisível por 3
   if (i % 3 == 0) {
      console.log(i);
   }
}