Python питон
добавим в класс note сравнение нот. сравнивать будем по высоте, без учёта длительности, причём будем считать большей ту ноту, чей тон выше (частота колебаний больше).
также добавим возможность транспонирования звука (переноса выше или ниже) с сдвигов > > вверх и < < вниз на гарантированно целое положительное значение. например, если «до» сдвинуть вправо на три тона ( > > 3), получится «фа». сдвиг должен работать циклически: если сдвинуть ту же «до» на тон вниз ( < < 1), должна получиться «си». а если сдвинуть «си» на один тон выше ( > > 1) — опять «до».
и ещё один новый метод — get_interval, позволяющий получить значение интервала между двумя нотами: «прима», «секунда», «терция», «кварта», «квинта», «секста» или «септима», где «прима» — интервал между двумя равными по тону нотами, а «септима» — максимальный доступный на нашем ксилофоне интервал — между «до» и «си».
в решении нужно объявить и можно использовать следующие константы (тестирующая система будет импортировать их из вашего кода):
n = 7
pitches = ["до", "ре", "ми", "фа", "соль", "ля", "си"]
long_pitches = ["до-о", "ре-э", "ми-и", "фа-а", "со-оль", "ля-а", "си-и"]
intervals = ["прима", "секунда", "терция", "кварта", "квинта", "секста", "септима"]
формат ввода
каждый тест представляет собой код, в котором будет использоваться ваш класс.
1 пример
ввод
from solution import (
note, n, pitches,
long_pitches, intervals
)
fa1 = note("фа", true)
fa2 = note("фа")
print(fa1 == fa2)
print(fa1 > fa2)
print(fa1 < fa2)
print(fa1 < = fa2)
la = note("ля", true)
print(fa1 < la)
вывод
true
false
false
true
true
2 пример
ввод
from solution import (
note, n, pitches,
long_pitches, intervals
)
fa2 = note("фа")
la = note("ля", true)
print(la > > 1)
print(la > > 2)
x = fa2 < < 4
print(x)
вывод
си-и
до-о
си
3 пример
ввод
from solution import (
note, n, pitches,
long_pitches, intervals
)
fa1 = note("фа", true)
fa2 = note("фа")
la = note("ля", true)
print(la.get_interval(fa1))
print(fa1.get_interval(fa2))
print(fa1.get_interval(note('си'
вывод
терция
прима
кварта
несмотря на то, что для правильной работы класса не обязательно реализовывать все шесть операций сравнения, рекомендуется всё же делать это (либо использовать functools.
228
335
Ответы на вопрос:
Windows 10 является попыткой Microsoft синхронизировать между собой всевозможные устройства под управлением одной ОС. Сюда входят компьютеры, ноутбуки, планшеты, смартфоны, а также игровые приставки XBox. Windows 7, в свою очередь, предназначена исключительно для ПК и ноутбуков. С учетом этого, в «десятке» есть много того, чего нет в «семерке», но и общего тоже хватает.
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
лена6ада22.11.2022 16:56
-
danilejik08.02.2022 23:54
-
Alya2305119.02.2022 17:34
-
anya19080425.12.2021 23:44
-
Диана14901827.04.2021 12:04
-
pavelvladlem28.06.2023 14:28
-
DIANA06110614.09.2020 03:22
-
polinavorkuta16.05.2021 10:16
-
ivan44514.02.2022 14:30
-
рлжжх24.04.2022 05:03
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.