Share This
Связаться со мной
Крути в низ
Categories
//Тип последовательности: задача на программирование на Python

Тип последовательности: задача на программирование на Python

21.07.2022Category : Python

Напишите функцию, которая будет определять, является ли переданная ей последовательность линейной («Linear»), квадратичной («Quadratic») или кубической («Cubic»).

Инпутом будет список чисел произвольной длины. Числа в списке будут представлять собой одну из указанных последовательностей.

Функция должна возвращать строки «Linear», «Quadratic» или «Cubic» в соответствии с тем, какая последовательность передана.

Примеры

seq_level(1, 2, 3, 4, 5) ➞ "Linear" seq_level(3, 6, 10, 15, 21) ➞ "Quadratic" seq_level(4, 14, 40, 88, 164) ➞ "Cubic"

Варианты решения

def seq_level(lst):     seq = lambda x: [b - a for a, b in zip(x, x[1:])]     is_linear = lambda x: len(set(seq(x))) == 1      return 'Linear' if is_linear(lst)          else 'Quadratic' if is_linear(seq(lst))          else 'Cubic'
def seq_level(lst):     d, level = {1: 'Linear', 2: 'Quadratic', 3: 'Cubic'}, 0     while len(set(lst)) != 1:         lst = [a - b for a, b in zip(lst, lst[1:])]         level += 1     return d[level]
def seq_level(lst):     dif1 = [j - i for i, j in zip(lst, lst[1:])]     dif2 = [j - i for i, j in zip(dif1, dif1[1:])]     dif3 = [j - i for i, j in zip(dif2, dif2[1:])]      if not sum(dif2): return 'Linear'     if not sum(dif3): return 'Quadratic'     return 'Cubic'

tip posledovatelnosti zadacha na programmirovanie na python d7754e1 - Тип последовательности: задача на программирование на Python

Английский для программистов

Наш телеграм канал с тестами по английскому языку для программистов. Английский это часть карьеры программиста. Поэтому полезно заняться им уже сейчас

Скачать ×

  • 0 views
  • 0 Comment

Leave a Reply

Ваш адрес email не будет опубликован.

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

Свежие комментарии

    Рубрики

    About Author 01.

    blank
    Roman Spiridonov

    Моя специальность - Back-end Developer, Software Engineer Python. Мне 39 лет, я работаю в области информационных технологий более 5 лет. Опыт программирования на Python более 3 лет. На Django более 2 лет.

    Categories 05.

    © Speccy 2022 / All rights reserved

    Связаться со мной
    Close