Aproveitei as explicações do instrutor para inserir o texto, porém usei o 'for' para chamar a função. Que tal?
<meta charset="UTF-8">
<canvas width="600" height="400"></canvas>
<script>
function desenhaQuadrado(x, y, cor) {
var tela = document.querySelector('canvas');
var pincel = tela.getContext('2d');
pincel.fillStyle = cor;
pincel.fillRect(x, y, 50, 50);
pincel.strokeStyle = 'black';
pincel.strokeRect(x, y, 50, 50);
}
function desenhaTexto(texto, x , y) {
var tela = document.querySelector('canvas');
var pincel = tela.getContext('2d');
pincel.font='20px Georgia';
pincel.fillStyle='black';
pincel.fillText(texto, x, y);
}
desenhaTexto("Qual é a fração?", 50, 30);
for(var x = 50; x < 200; x = x + 50) {
desenhaQuadrado(x, 50, 'green');
}
for(var x = 200; x < 250; x = x + 50) {
desenhaQuadrado(x,50, 'white');
}
</script>