P0002. Representant comercial P28118


Statement
 

pdf   zip

thehtml

Un representant comercial fa una sèrie de trajectes per la ciutat. Cada trajecte comença en un punt qualsevol, passa per alguns comerços i acaba tornant al punt d’origen.

Feu un programa que llegeixi diversos trajectes i, per a cadascun d’ells, escrigui la distància total recorreguda suposant que els desplaçaments entre comerços es fan en línia recta.

El vostre programa ha d’incloure la funció

double distancia(double x1, double y1, double x2, double y2);

que retorna la distància euclidiana entre els punts (|x1|, |y1|) i (|x2|, |y2|).

Entrada

L’entrada és una seqüència de trajectes. Cada trajecte comença amb una paraula que l’identifica, i segueix amb una seqüència de dos o més parells de reals que representen les coordenades dels llocs visitats. El punt d’arribada sempre coincideix amb el punt de sortida, i apareix únicament al principi i al final de cada seqüència de coordenades.

Sortida

Cal escriure la distància euclidiana total de cada trajecte donat, seguint el format de l’exemple. Les distàncies s’han d’escriure amb 4 dígits darrera el punt decimal.

Observació

Recordeu que la distància euclidiana entre dos punts (x1, y1) i (x2, y2) és

(x1x2)2 + (y1y2)2
 ⁠ ⁠ .
Public test cases
  • Input

    bonanova  0 0  1 0  1 1  0 1  0 0
    granvia   0 0  1 0  0 0
    diagonal  1.1 3.748  4 5  6 8  2 3  -1.5 -1  2 3  -6 6  1.1 3.748
    enlloc    5 5  5 5
    triangle  0 0  0 2  1 2  0 0
    

    Output

    Trajecte bonanova: 4.0000
    Trajecte granvia: 2.0000
    Trajecte diagonal: 39.7901
    Trajecte enlloc: 0.0000
    Trajecte triangle: 5.2361
    
  • Information
    Author
    Professorat de P1
    Language
    Catalan
    Other languages
    English
    Official solutions
    C++
    User solutions
    C++ Python