Acaba de invitar a un estudiante de artes liberales a su casa y le está diciendo
"Sabes, soy un gran programador y puedo hacer x e y y z ..."
Él / ella rápidamente se aburre y te pregunta:
"Si realmente eres un gran programador, ¿puedes hacer un programa que me permita dibujar? Solo necesito dibujar líneas en la pantalla usando el mouse y seleccionando diferentes colores de cualquier manera".
Su código puede importar bibliotecas estándar. Su código puede requerir que los colores se seleccionen a través del teclado.
Este es el código de golf ; el código más corto gana.
Viñetas
Las líneas se dibujan moviendo el mouse mientras presiona el botón izquierdo.
El Algoritmo de línea de Bresenham no es necesario, cualquier algoritmo incorporado hará el truco
Si el usuario puede cambiar el grosor de la línea de cualquier manera, obtienes un bono * 0.8 pero no es obligatorio.
Supongo que debería ser mejor implementar el dibujo lineal nosotros mismos, pero si lo desea, puede importar una biblioteca para eso solo dígalo en la descripción del código.
El mínimo es de 5 colores diferentes (rojo, verde, azul, blanco, negro). Si haces que cambien al azar, obtienes una penalización de * 1.2. Puede cambiarlos de la forma que desee (tanto los botones como las pulsaciones de teclas están bien).
Dibujarlos presionando el mouse entre los puntos o a mano alzada sería lo mejor (es decir, como lo hace en la pintura) y le da una bonificación de * 0.7, pero cualquier otro método está bien: (ejemplo) haga clic en dos puntos y dibuje una línea entre esos puntos ?
El lienzo de dibujo debe ser 600x400.
Cambiar el color debería cambiar el color solo de las líneas que se dibujarán en el futuro.
Implementar un comando "Borrar todo" no es obligatorio, pero si lo implementa obtendrá * 0.9 de bonificación.