Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Não usei function, apenas repeti, está errado?

Percebi que alguns usaram a função para criar o triângulo com menos linhas de código. Mas fiz desse modo simples e funcionou.

<canvas width="600" height="400"> </canvas>
<script>
var tela = document.querySelector('canvas');
var pincel = tela.getContext('2d');

pincel.beginPath();
pincel.moveTo(50, 50);
pincel.lineTo(50, 400);
pincel.lineTo(400, 400);
pincel.fill();

pincel.fillStyle ="red";
pincel.beginPath();
pincel.moveTo(100, 175);
pincel.lineTo(100, 350);
pincel.lineTo(275, 350);
pincel.fill();

</script>
1 resposta
solução!

Boa noite, Luan! Como vai?

Não está errado! Como vc percebeu, em programação normalmente há várias formas de se resolver um mesmo problema! A sua solução resolve o problema levantado, no entanto, e se vc tivesse que criar uns 50 triângulos? Seria chato ter que copiar e colar as mesmas linhas de código 50 vezes! Fora que copiar e colar código é um grande indicativo que estamos fazendo algo de um modo que pode ser melhorado!

Nesse caso, como funções existem justamente para englobar uma determinada funcionalidade que queremos criar, a melhor solução seria fazer uma função que desenhe os triângulos!

Com isso, seu código ficará mais fácil de ser mantido pq se um dia vc precisar modificar a forma como os triângulos são desenhados terá que mexer apenas dentro da sua função e, além disso, vc vai ver que ele vai ficar mais semântico! Hj se vc chamar algum amigo e pedir pra ele dar uma olhada no seu código ele não vai saber rapidamente o que o código faz! Mas se o seu amigo ver um código assim:

function desenhaTriangulo() {
     // desenha o triângulo
}

desenhaTriangulo();

Mesmo que ele tenha pouco conhecimento de Javascript ele vai sacar que seu código está desenhando triângulos.

Pegou a ideia?

Portanto, o desafio é fazer esse código com funções!

Grande abraço e bons estudos!