В электронной таблице в файле 9.xlsx приведена ведомость расходов и доходов физических лиц. Слева перечислены фамилии. Для каждого лица в первой строке указана сумма доходов за период, во второй – сумма расходов. Найдите двух людей – с наибольшей разницей доходов и расходов за весь период. Первого – с наибольшей прибылью, второго – с наибольшим долгом. В качестве ответа приведите два целых положительных числа – прибыль первого и долг второго. Ответ записывайте без пробелов и разделителей.
Excel
В новом столбце N напротив первой фамилии напишем формулу:
=СУММ(B2:M2)-СУММ(B3:M3)
Так мы получим разницу между расходами и доходами. Аналогичные формулы напишем напротив каждой фамилии.
Теперь, чтобы узнать максимальный доход, нужно написать:
=МАКС(N1:N31)
Получим, 71879.
А чтобы узнать максимальный долг, нужно написать:
=МИН(N1:N31)
Получим, -70609, однако в ответ запишем без минуса.
Ответ: 7187970609
Python
# Открываем нужный файл
f = open(’9.txt’, encoding=’UTF-8’) # Для считывания русских символов нужно поставить кодировку UTF-8
f.readline() # Считываем первую строку с номерами столбцов
lines = [line.split() for line in f] # Считываем остальные строки файла и разделяем все значения ячеек
max_income = 0 # Максимальный доход
max_debt = 0 # Максимальный долг
for i in range(0, len(lines), 2): # Перебираем доходы и расходы с шагом 2
income = sum(map(int, lines[i][1:])) # Сумма доходов (индекс 1, так как по индексу 0 находится фамиилия)
debt = sum(map(int, lines[i + 1])) # Сумма расходов
diff = abs(income - debt) # Разница между доходами и расходами
if diff > max_income and income >= debt: # Если человек получил максимальный доход
max_income = diff
if diff > max_debt and income < debt: # Если человек получил максимальный долг
max_debt = diff
print(max_income, max_debt, sep=’’) # Выводим ответ в нужном формате