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

To check your solution you need to sign in
Sign in to continue