Уведомления

Группа в Telegram: @pythonsu

#1 Апрель 20, 2021 19:14:16

damirlanum
Зарегистрирован: 2021-04-20
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

Помогите решить несложную задачу, пожалуйста!

Задача:
Есть код программы, который выводит смену смену пикета-как показано в таблице, но он работает для значения до 1000.
Необходимо дополнить программу которая будет еще показывать строку:1016 900 ->ПК10.Конечный вывод должен быть таким:

1016 900 ->ПК10
900 899 -> ПК9
800 799 -> ПК8
700 699 -> ПК7
600 599 -> ПК6
500 499 -> ПК5
400 399 -> ПК4
300 299 -> ПК3
200 199 -> ПК2
100 99 -> ПК1

Код программы:

def is_new_pk(prev_m, this_m):
if prev_m == this_m:
return 0
prev_m = prev_m % 100
this_m = this_m % 100
if prev_m == 99 and this_m == 0:
return +1
if prev_m == 0 and this_m == 99: # предыдущий=0,следующий = 99
# Смена пикета по убыванию (100->99)
return -1

pm = None
p = 0

for m in range(1016, 1, -1):# (1, 1016):
if pm is not None:
pk = is_new_pk(pm, m)
if pk: # pk=+1 -1 .
if pk > 0: # pk=+1
pk_n = 1 + pm // 100 # определение пикета
else:
pk_n = 1 + m // 100 # определение пикета .
print(“%d %d -> ПК%d” % (pm, m, pk_n))
p = 0
else:
p += 1
pm = m

Помогите пожалуйста, буду очень признателен!

Прикреплённый файлы:
attachment задача.py (611 байт)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version