Menu Close

Dos cuadrados encajados

Enunciado

Definir la función

   dosCuadrados :: Picture

que dibuje dos cuadrados encajados como se muestra en la siguiente figura
2CuadradosEncajados

Nota: Escribir las soluciones usando la siguiente plantilla

import Graphics.Gloss
 
main :: IO ()
main = display (InWindow "Dibujo" (500,300) (20,20)) white dosCuadrados
 
dosCuadrados :: Picture
dosCuadrados = undefined

Soluciones

import Graphics.Gloss
 
main :: IO ()
main = display (InWindow "Dibujo" (500,300) (20,20)) white dosCuadrados
 
dosCuadrados :: Picture
dosCuadrados = pictures [cuadrado,
                         scale r r $ rotate 45 $ cuadrado]
    where cuadrado = rectangleWire 200 200
          r        = 1 / sqrt 2
Inicial

2 soluciones de “Dos cuadrados encajados

  1. Abel Martín
    import Graphics.Gloss
     
    main :: IO ()
    main = display (InWindow "Dibujo" (500,300) (20,20)) white dosCuadrados
     
    dosCuadrados :: Picture
    dosCuadrados = pictures [cuadrado,
                             scale r r $ rotate 45 $ cuadrado]
        where cuadrado = rectangleWire 200 200
              r        = 1 / sqrt 2
  2. Diego

    En lugar de hacer 2 cuadrados, he hecho 4 triángulos.

    dosCuadrados :: Picture
    dosCuadrados = 
      let triang = line [(-100,0),(-100,100),(0,100),(-100,0)] in
      pictures [rotate ang triang | ang <- [0,90..270]]

Escribe tu solución

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.