Конструктор класса в Python

В прекоде подготовлен класс Planet, он описывает планеты и хранит свойства: name (имя), surface_area (площадь поверхности в км²), average_temp_celcius (средняя температура поверхности планеты по Цельсию), average_temp_fahrenheit (то же по Фаренгейту). Конструктор класса принимает на вход три параметра: имя планеты, её радиус в километрах и среднюю температуру на поверхности в градусах Цельсия.

  1. В конструкторе вычислите площадь поверхности планеты. Для упрощения считайте планеты сферическими.

Площадь поверхности сферы с радиусом r равна 4 * π * r² . Значение числа π получите так: math.pi (для этого подключите модуль math).

  1. В конструкторе вычислите температуру поверхности по Фаренгейту.

Чтобы перевести температуру по Цельсию в шкалу Фаренгейта, нужно умножить значение на 9/5 и прибавить 32.

Подсказка:

  1. В качестве значения свойства self.surface_area подставьте формулу 4 * math.pi * radius * radius
  2. В качестве значения свойства self.average_temp_fahrenheit подставьте формулу temp_celsius * 9 / 5 + 32

Код:



# импортируйте библиотеку math
import math

class Planet:
    def __init__(self, name, radius, temp_celsius):
        self.name = name
        self.surface_area =  4*math.pi*radius*radius # здесь вычислите площадь поверхности шара
        self.average_temp_celcius = temp_celsius
        self.average_temp_fahrenheit =  temp_celsius*9/5+32  # здесь переведите температуру в градусы Фаренгейта

    def show_info(self):
        print(f"Планета {self.name} имеет площадь поверхности {self.surface_area} кв.км.")
        print(f"Средняя температура поверхности планеты: {self.average_temp_fahrenheit}° по Фаренгейту.")

jupiter = Planet('Юпитер', 69911, -108)
jupiter.show_info() # вызовите метод show_info для Юпитера


Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: