0% encontró este documento útil (0 votos)
11 vistas3 páginas

Tercer Parcial

El documento presenta tres ejercicios de programación en Python. El primer ejercicio consiste en calcular el perímetro de figuras geométricas a partir de coordenadas, el segundo evalúa si una matriz es diagonal positiva, neutra o negativa, y el tercero requiere corregir y utilizar una clase Auto para simular el avance de vehículos. Cada ejercicio incluye ejemplos y requiere imprimir resultados por pantalla.

Cargado por

belenkanas
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
11 vistas3 páginas

Tercer Parcial

El documento presenta tres ejercicios de programación en Python. El primer ejercicio consiste en calcular el perímetro de figuras geométricas a partir de coordenadas, el segundo evalúa si una matriz es diagonal positiva, neutra o negativa, y el tercero requiere corregir y utilizar una clase Auto para simular el avance de vehículos. Cada ejercicio incluye ejemplos y requiere imprimir resultados por pantalla.

Cargado por

belenkanas
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Programación 1 - Tercer parcial - Junio 2024

Ejercicio 1 (40 puntos):

Dado el siguiente diccionario:


figuras = { 3: 'Triángulo', 4: 'Cuadrilátero', 5: 'Pentágono', 6: 'Hexágono'}

Implemente la función perimetro que reciba por parámetro una lista de tuplas con las coordenadas X
y Y de los puntos de la figura. La función deberá el texto “El perímetro del figura es: perimetro”
Donde figura y perimetro serán determinados en base a la lista recibida

La cantidad de elementos de la lista determinará el tipo de figura, así por ejemplo si la cantidad de
elementos es 3 entonces la figura será un triángulo, si es 4 un cuadrilátero y así sucesivamente.
Si la cantidad de elementos no se encuentra en el diccionario figuras entonces se devolverá “No se
ha podido determinar el tipo de figura”

El perímetro se calculará con las coordenadas de la figura, recordar que el perímetro es la suma de
cada lado de la figura y que la distancia entre 2 puntos (x1,y1) y (x2,y2) viene dado por la fórmula
2 2
(𝑥2 − 𝑥1) + (𝑦2 − 𝑦1) ​

2 2
Por ejemplo los puntos (1,2) y (2,1) tienen una distancia (2 − 1) + (1 − 2) = 1.41

Recordar que cada punto de la lista forma una línea con el siguiente punto y que el último punto
forma una línea con el primero.

Ejemplos:

lista = [(0, 0), (3, 0), (0, 4)]


perimetro(lista) Debería devolver “El perímetro del Triángulo es: 12.0 “

lista = [(0, 0), (4, 0), (6, 3), (3, 6), (0, 4)]
perimetro(lista) Debería devolver “El perímetro del Pentágono es: 19.21”

No es relevante la cantidad de decimales del perímetro.

lista= [(0, 0), (1, 1)]


perimetro(lista_otra) Debería devolver “No se ha podido determinar el tipo de figura”

Debe incluir en el código los ejemplos anteriores y uno más a su elección, imprimiendo el
resultado por pantalla.
Ejercicio 2 (35 puntos):

Decimos que una matriz de n x n es “DIAGONAL POSITIVA” cuando la suma de su diagonal es


mayor a la suma del resto de celdas. Si la suma es igual entonces decimos que es “DIAGONAL
NEUTRA” y “DIAGONAL NEGATIVA” en caso contrario.

Por ejemplo

positiva = [
[3, 0, 2],
[0, 4, 0],
[0, 0, 5]
]
es “DIAGONAL POSITIVA” ya que 3 + 4 + 5 > 2

neutra = [
[2, 0, 0],
[0, 3, 0],
[0, 5, 0]
]
es “DIAGONAL NEUTRA” ya que 2 + 3 = 5

negativa = [
[1, 1, 0],
[2, 0, 0],
[0, 0, 1]
]
es “DIAGONAL NEGATIVA” ya que 1 + 1 < 3

Implementar la función diagonal que reciba por parámetro una matriz y devuelva el tipo de
DIAGONAL que es.

Se asume que la matriz será de n x n por lo que no es necesario realizar la validación.

Debe incluir en el código los ejemplos anteriores y uno más a su elección, imprimiendo el
resultado por pantalla.
Ejercicio 3 (25 puntos):

Dada la siguiente clase

class Auto:

def __init__(self,velocidad_maxima):
self.velocidad_maxima = velocidad_maxima
self.velocidad_actual = 0
self.distancia_recorrida = 0
self.piloto = ""

def avanzar(self,velocidad,tiempo):
self.distancia_recorrida += velocidad

def asignar_piloto(self,piloto):
self.piloto = piloto

- Corrija el método avanzar de la clase Auto para que tenga en cuenta la velocidad máxima
(no es posible avanzar a más velocidad que la máxima !) y que ajuste la distancia recorrida
correctamente ( velocidad x tiempo )

- Cree 3 autos diferentes con velocidades máximas 10,20 y 30 respectivamente

- Asigne los pilotos "P1","P2" y "P3" respectivamente a los autos

- Avance los autos en 15, 10 y 5 respectivamente

También podría gustarte