Cercles (3)

Per resoldre aquest exercici us caldran les definicions i els procediments dels problemes P46254, P84786 i P39799.

Feu una funció que indiqui la relació que tenen dos cercles @c1@ i @c2@ donats:

    int relacio(const Cercle& c1, const Cercle& c2);

Cal que la funció retorni 1 si @c1@ és interior a @c2@, 2 si @c2@ és interior a @c1@, 3 si cap cercle és interior a l’altre però els cercles intersecten, i 0 altrament (si els cercles no tenen cap punt en comú).

Suposeu que no es produirà mai cap d’aquests casos extrems:

Feu un programa que llegeixi dos cercles inicials @c1@ i @c2@, seguits d’una sèrie d’ordres, i escrigui quina relació tenen @c1@ i @c2@ a cada pas segons es mostra en els exemples.

Entrada

L’entrada comença amb dues línies, una per a @c1@, l’altra per a @c2@, cadascuna amb tres reals (el tercer, el radi, estrictament positiu). A continuació ve una seqüència de línies, cadascuna de les quals comença amb un enter @i@ i una ordre @s@: @i@ val 1 o 2, i indica a quin dels cercles cal aplicar l’ordre; @s@ val “mou” o “escala”. Si @s@ val “mou”, a continuació venen dos reals que indiquen l’increment de les coordenades. Si @s@ val “escala”, a continuació ve un real estrictament positiu que indica el factor d’escalat.

Sortida

Cal escriure la relació entre els dos cercles a l’inici i a cada pas, segons es mostra en l’exemple.

Informació del problema

Autoria: Salvador Roura

Generació: 2026-01-25T11:10:11.455Z

© Jutge.org, 2006–2026.
https://jutge.org