[ Foro de Python ]
Alguien me podría ayudar a hacer un trabajo en python?
Trata sobre clases
Ayudarte con dudas concretas, claro que sí.
Hacer todo tu trabajo será más difícil.
La cosa es que no tengo mucha idea. Con tener la estructura hecha igual podría acabarlo
Clase Mejoras (1 Punto)
Esta clase gestiona las mejoras disponibles en el concesionario y sus contaminaciones.
Sus atributos son:
· NombreMejora: cadena de caracteres (String).
· ContAcustica: número real (coma flotante).
· ContAtmosferica: número real (coma flotante).
· ContVisual: número real (coma flotante).
Clase Coche (3 Puntos)
Esta clase gestiona los coches vendidos en el concesionario.
Sus atributos son:
· Marca: entero (0: Mercedes, 1: BMW, 2: Ferrari, 3: Jaguar).
· Tipo: entero (0: clásico, 1: 4x4, 2: deportivo).
· Tamanyo: entero (0: normal, 1: grande).
· Colores: entero (0: negro, 1: blanco, 2: rojo, 3: gris, 4: verde, 5: azul).
· Mejoras: lista de objetos de la clase mejoras.
Sus métodos son:
· Métodos para consultar y modificar todos los atributos de la clase (métodos get y set).
· Método __str__ que devuelve un String apropiado para mostrar por pantalla los atributos de la clase.
Ejemplo:
Coche Ferrari, deportivo, grande y rojo. Mejoras: escape deportivo, cristales tintados, luces de neón y bafles.
·Método getPrecio que devuelve un double correspondiente al precio de venta al público del coche. El cálculo será el siguiente: si la marca es Ferrari, su precio inicial será de 100.000€?, si es Jaguar, 75.000€, si es Mercedes, 50.000€ y si es BMW, 25.000€. Si es un coche deportivo se le sumarán 20.000€ y si es un 4x4 10.000€. Si tiene un tamaño grande se le sumarán 5.000€. Se añadirán 2.000€ si se le añade un escape deportivo, 1.000€ si se le añaden las luces de neón, 750€ si le añaden los bafles y 500€ si se le añaden los cristales tintados. Además, solo a los coches de la marca Ferrari podrás añadirle unos alerones traseros por 250€.
Tanto el constructor con argumentos como los setters de la clase Coche deberán comprobar que son valores válidos los que se asignan a los atributos (consulta las indicaciones aportadas entre paréntesis en cada uno de ellos previamente). Si no lo son, el constructor pondrá valores por defecto y los setters dejarán los valores que ya estaban.
Clase Cars
Clase en la que se implementarán las siguientes funciones:
· RegistrarVentas: recibe una lista de Coches vacío y una lista de Mejoras lleno. Solicita la marca, tipo, tamaño y colores por teclado. Emplea la lista de Mejoras para mostrar un menú en el que tendremos que seleccionar uno a uno las 4 posibles mejoras para el coche. Asumimos que el usuario no se equivocará de tipo de datos al introducir los valores. Una vez creado y configurado el Coche, se almacenará en la lista de Coches y se consultará por teclado si se quiere introducir un Coche más. (3 Puntos)
· MostrarNivelContaminacion: recibe una lista de Coches lleno y muestra por pantalla el nivel total contaminación correspondiente a todos los coches. Dentro de la contaminación atmosférica, los coches pequeños contaminan 5 ppm, los normales 10 ppm y los grandes 15 ppm. Si es un coche deportivo se le añadirán 5 ppm. Además, si le añadimos un tubo de escape deportivo se multiplicará por 1,2. Dentro de la contaminación visual todos los coches contaminan 3 VIU, si añadimos las luces neón sumarán 8 VIU. Y dentro de la contaminación acústica, todos los coches contaminan 7 dB menos los deportivos que contaminan 14 dB. Si le añadimos los bafles la contaminación incrementará en 12 dB. (2 Puntos)
· MostrarIngresoMedio: recibe una lista de Coches lleno y muestra por pantalla la media del dinero que se ha ingresado por la venta de los coches. (1 Punto)
(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)