Задание.
Завершите класс Difference, написав следующее:
- Конструктор класса, который принимает массив целых чисел в качестве параметра и сохраняет его в переменной экземпляра __elements.
- Метод calculateDifference, который находит максимальную абсолютную разницу между любыми двумя числами и сохраняет ее в переменной экземпляра maximumDifference.
Решение:
class Difference: def __init__(self, a): self.__elements = a self.maximumDifference = None def computeDifference(self): n = len(self.__elements) for i in range(n-1): for j in range(i+1, n): difference = abs(self.__elements[i]-self.__elements[j]) if self.maximumDifference is None or self.maximumDifference < difference: self.maximumDifference = difference
В этой задаче тоже нет ничего особенного. Мы добавляем в инициализатор вторую переменную maximumDifference. Затем мы реализуем метод calculateDifference. Для каждого элемента массива вычисляем разницу с остальными.
Если maxDifference равен None или меньше текущей разницы, мы устанавливаем максимум равным текущему, и все!
Удачного кодирования!