Exercici 2 · Fundamentos de Programación I URV Examen Parcial 1. Elements bàsics: Recorregut i cerca

Tema: Algorismes bàsics i esquema de recorregut de seqüències · Del examen Examen Parcial 1. Elements bàsics: Recorregut i cerca

Enunciado

Exercici 2 (5 punts). Càlcul del perímetre d'un polígon irregular

Es vol dissenyar un algorisme que calculi el perímetre d'un polígon irregular representat per una successió de punts en el pla, amb coordenades xx i yy de tipus real.

L'usuari facilitarà les coordenades de cada vèrtex de manera ordenada. Per tancar el polígon, es tornaran a introduir al final les coordenades del primer vèrtex. Per a cada vèrtex s'introdueix primer la coordenada xx i a continuació la coordenada yy.

Per exemple, per al polígon anterior es facilitaria la seqüència següent:

3,8 1,8 6,2 2,7 9,1 1,7 5,8 11,7 5,8 13,2 3,6 5,2 0,5 5,9 3,8 1,8

La longitud de cada segment definit per dos punts (x1,y1)(x_1, y_1) i (x2,y2)(x_2, y_2) ve donada per l'expressió euclidiana:

mida_segment=(x2−x1)2+(y2−y1)2\text{mida\_segment} = \sqrt{(x_2 - x_1)^2 + (y_2 - y_1)^2}

Exemple de traça per a un triangle amb els punts (3.8,1.8)(3.8, 1.8), (6.2,2.7)(6.2, 2.7) i (0.5,5.9)(0.5, 5.9):

segment 1 = 2.56

segment 2 = 6.54

segment 3 = 5.26

Perímetre = 14.36

Condicions de disseny:

L'algorisme ha de demanar les coordenades a l'usuari i imprimir el perímetre final (no cal mostrar resultats parcials de cada segment).

Es disposa de la funció arrel_quadrada(v), però no d'operacions ni funcions per elevar al quadrat ni calcular potències.

Podeu assumir que la seqüència mai estarà buida, que com a mínim hi haurà 3 vèrtexs diferents abans de tancar el perímetre i que les dades s'introdueixen en parelles vàlides.

Enunciado: Exercici 2 · Fundamentos de Programación I URV Examen Parcial 1. Elements bàsics: Recorregut i cerca

Solución

Según los criterios oficiales de corrección

Dissenyeu un algorisme en pseudocodi que processi la informació i calculi el perímetre d'un polígon irregular.

Solución: ```pseudocode algorisme CalcularPerimetrePoligon var x_inici, y_inici: real x_ant, y_ant: real x_act, y_act: real dx, dy: real distancia: real perimetre: real fi_poligon: booleà fivar perimetre := 0.0 // Lectura del primer vèrtex llegir(x_inici) llegir(y_inici) x_ant := x_inici y_ant := y_inici fi_poligon := fals mentre no fi_poligon fer llegir(x_act) llegir(y_act) // Càlcul de les diferències de coordenades dx := x_act - x_ant dy := y_act - y_ant // Longitud del segment sense usar la funció de potència: (dx * dx) distancia := arrel_quadrada((dx * dx) + (dy * dy)) perimetre := perimetre + distancia // Comprovació de si hem tornat al punt d'origen per tancar el polígon si (x_act = x_inici) i (y_act = y_inici) llavors fi_poligon := cert sino x_ant := x_act y_ant := y_act fisi fimentre escriure("El perímetre del polígon és: ", perimetre) finalgorisme ```

La explicación paso a paso, hecha con IA, es Premium. Premium

Resuélvelo aquí mismo: corrección automática, pistas y solución paso a paso.

‹ Exercici 2 · Examen Parcial 1: Elements Bàsics, Recorregut i Cerca

Más ejercicios de Algorismes bàsics i esquema de recorregut de seqüències