Laptop vs Desktop
Sei un responsabile di sistema in una compagnia tecnologica. Ti è stato affidato il compito di sviluppare un sistema di inventario per tenere traccia dei diversi computer nell'azienda.
Il sistema dovrebbe avere una classe base
Computer
con i seguenti attributi:manufacturer
: L'azienda che ha prodotto il computer.
model
: Il modello del computer.
year
: L'anno in cui il computer è stato prodotto.
Questa classe base dovrebbe avere un metodo
display_info()
che visualizza le informazioni sopra nel formato Manufacturer: <manufacturer>, Model: <model>, Year: <year>
.In aggiunta, devi creare due sottoclassi
Laptop
e Desktop
che ereditano dalla classe Computer
.La classe
Laptop
dovrebbe avere due attributi aggiuntivi:battery_life
: La durata media della batteria del laptop.
weight
: Il peso del laptop.
La classe
Desktop
dovrebbe avere un attributo aggiuntivo:power_consumption
: Il consumo energetico del desktop.
Sia la classe
Laptop
che la classe Desktop
dovrebbero sovrascrivere il metodo display_info()
della classe Computer
per visualizzare gli attributi aggiuntivi rilevanti per il loro tipo.La classe
Laptop
dovrebbe mostrare le informazioni nel formato Manufacturer: <manufacturer>, Model: <model>, Year: <year>, Battery Life: <battery_life>, Weight: <weight>
.La classe
Desktop
dovrebbe mostrare le informazioni nel formato Manufacturer: <manufacturer>, Model: <model>, Year: <year>, Power Consumption: <power_consumption>
.Input | Output |
comp = Computer('Dell', 'Inspiron 3593', 2020); laptop = Laptop('HP', 'Pavilion', 2019, '6 hours', '1.85 kg'); desktop = Desktop('Lenovo', 'ThinkCentre M720', 2022, '90 W'); comp.display_info(); laptop.display_info(); desktop.display_info() | Manufacturer: Dell, Model: Inspiron 3593, Year: 2020
Manufacturer: HP, Model: Pavilion, Year: 2019, Battery Life: 6 hours, Weight: 1.85 kg
Manufacturer: Lenovo, Model: ThinkCentre M720, Year: 2022, Power Consumption: 90 W |
Constraints
Time limit: 2 seconds
Memory limit: 512 MB
Output limit: 1 MB