Solució Dibuixos amb asteriscos

De wikiserver
Dreceres ràpides: navegació, cerca

Volcà : Utilitzarem un bucle que escriu una linia a cada volta.


for (var i = 1 ; i <= numfilas; i++)
{
  (Dibuixar la fila i)
}

On dibuixar la fila i correspón a:

  • Posar els espais en blanc d'esquerra a dreta
  • Posar els asteriscs
  • Salt de linia

El numero de asteriscs és facil ya que a cada fila hi ha el doble d'asteriscs que a l'anterior. Comencem amb numAst = 1; i els multipliquem per dos cada vegada.

Mosaic : S'ha d'escriure 8 files. S'ha de posar un asterisc o un espai en blanc depenen de la paritatde i+j.

for (var i = 1; i <= mida; i++)
//escribim les 8 files
     for (var j = 1; j <= mida; j++){
     {
         if ((i+j) % 2 == 0) // escribim un " "
         else // escribim un *
     }
}

Tauler : S'ha de modificar una mica el programa anterior. Es repeteix cada filera segons l'amplada de cada cuadre. A més a més, s'ha de repetir cada caràcter segons el numero de l'amplada de cada cuadre.

Es necessita un for adicional per l'amplada entre els 2 fors anterior i un altre for per repetir el caràcter :

for (...)
  for(var i = 1; i < ample; i++)
  {
     for (...){
     {
         if ((i+j) % 2 == 0) // repetim " " tantes vegades com ample (un altre for)
         else // escribim un * tantes vegades com ample
     }
  }
}