Olles P62963


Statement
 

Graphic problem

pdf   zip

thehtml
Heu pujat mai a les olles dels parcs d’atraccions? Aquí, suposarem el model següent: Les olles tenen radi r, i el seu centre es troba a 300 unitats de distància del centre C de l’atracció, la qual gira a v1 graus per unitat de temps. Considereu el punt P inicialment a l’extrem més allunyat a C d’una olla inicialment alineada horitzontalment a la dreta de ‍C. Sabem que aquesta olla gira a v2 graus per unitat de temps. Per tant, en cada instant de temps t ≥ 0, P es troba a (x, y), on
x = 300 cos(v1t π /180) + r cos(v2t π /180) ⁠ ⁠ ,   y = 300 sin(v1t π /180) + r sin(v2t π /180) ⁠ ⁠ .

Feu un programa que dibuixi la trajectòria de P durant una volta sencera de l’atracció, amb increments de temps d’una unitat, començant amb t = 0. Useu les funcions cos, sin i pi de la llibreria math, i pinteu els punts reals (x, y) directament amb la funció dib.point().

Entrada

L’entrada consisteix en dos noms de colors c1 i c2, seguits d’un enter r entre 1 i 100, seguit de dos reals v1 i v2, amb v1 > 0. Feu servir float(input()) per llegir reals.

Sortida

Cal generar una imatge (801, 801) de color de fons c1, pintant amb color c2 els punts (x, y) pels quals passi P. Per centrar la imatge, sumeu 400 a les dues coordenades. Pareu de pintar punts quan l’atracció hagi girat 360 graus o més (aquest punt no el pinteu).

Public test cases
  • Input

    Yellow
    Blue
    80
    0.21
    2.1
    

    Output

    sample-1.png

     (801×801)

  • Input

    Snow
    Navy
    59
    0.21
    -1.05
    

    Output

    sample-2.png

     (801×801)

  • Input

    Beige
    Red
    40
    1.12
    -1.5
    

    Output

    sample-3.png

     (801×801)

  • Information
    Author
    Salvador Roura
    Language
    Catalan
    Official solutions
    Python
    User solutions
    Python