[Задача] Семь нот [до 25.08.2009]

Различные конкурсы нашего портала

Какой вариант решения вы выбираете?

Опрос закончился 28 авг 2009, 10:27

1
1
20%
2
1
20%
3
1
20%
4
2
40%
 
Всего голосов: 5

Аватара пользователя
Pavel Krivozubov

Activity Bronze
professor
professor
Сообщения: 4421
Зарегистрирован: 07 фев 2008, 16:39
Награды: 3
Версия LabVIEW: 7.0 - 2013
Откуда: г. Электросталь
Благодарил (а): 24 раза
Поблагодарили: 9 раз
Контактная информация:

Re: [Задача] Семь нот [до 25.08.2009]

Сообщение Pavel Krivozubov »

да и еще. Присылайте решения в формате 8.0.!!! :D
Аватара пользователя
Pavel Krivozubov

Activity Bronze
professor
professor
Сообщения: 4421
Зарегистрирован: 07 фев 2008, 16:39
Награды: 3
Версия LabVIEW: 7.0 - 2013
Откуда: г. Электросталь
Благодарил (а): 24 раза
Поблагодарили: 9 раз
Контактная информация:

Re: [Задача] Семь нот [до 25.08.2009]

Сообщение Pavel Krivozubov »

Всё я разобрался с тем решением :D
Просто надо было вытащить наушники из разъёма, т.к. звук построен на базе системного бипа)) Я кстати и не знал, что бип не звучит, когда вставлены наушники, век живи - век учись как говориться. :shok:
Но поскольку еще появились желающие - предлагаю все же дождаться их решений. Ничего страшного, запустим чуть позже.
Аватара пользователя
Pavel Krivozubov

Activity Bronze
professor
professor
Сообщения: 4421
Зарегистрирован: 07 фев 2008, 16:39
Награды: 3
Версия LabVIEW: 7.0 - 2013
Откуда: г. Электросталь
Благодарил (а): 24 раза
Поблагодарили: 9 раз
Контактная информация:

Re: [Задача] Семь нот [до 25.08.2009]

Сообщение Pavel Krivozubov »

И так начинаем голосование.
Претендентов четверо.
Решение претендента 1 выложено в формате 8.6., т.к. в 8.0. не работает.
Для прослушивания решения №3 надо вытащить наушники из разъёма.
Поехали!
Аватара пользователя
Pavel Krivozubov

Activity Bronze
professor
professor
Сообщения: 4421
Зарегистрирован: 07 фев 2008, 16:39
Награды: 3
Версия LabVIEW: 7.0 - 2013
Откуда: г. Электросталь
Благодарил (а): 24 раза
Поблагодарили: 9 раз
Контактная информация:

Re: [Задача] Семь нот [до 25.08.2009]

Сообщение Pavel Krivozubov »

Напоминаю - скорость выполнения этого задания не оценивается.
А по поводу занимаемой памяти привожу замеры традиционно в LabVIEW 8.6. в Memory Usage по полю Total.
1) VI 162,9 k + SubVI 32,5 k = 195,4 k
2) 4845,6 k (из-за того, что у него массивы забиты в виде констант).
3) 234,7 k
4) 203,2 k
Аватара пользователя
Pavel Krivozubov

Activity Bronze
professor
professor
Сообщения: 4421
Зарегистрирован: 07 фев 2008, 16:39
Награды: 3
Версия LabVIEW: 7.0 - 2013
Откуда: г. Электросталь
Благодарил (а): 24 раза
Поблагодарили: 9 раз
Контактная информация:

Re: [Задача] Семь нот [до 25.08.2009]

Сообщение Pavel Krivozubov »

У меня получается следующее (в графах таблицы места по оценочным номинациям в порядке убывания). 1- первое место (золото), 4- соответственно 4-е место. Следовательно победитель это тот у кого в поле "Сумма" стоит меньшее число.
table.PNG
table.PNG (10.31 КБ) 11329 просмотров
Так что голосую за №3!
Мне так же понравился по инновационности вариант №4. Вариант №1 многофункциональный, но к сожалению есть ряд багов, которые сам автор впрочем и указывает. Вариант №2 лидер по минимизации БД, но вот инновационности в качестве дополнительного функционала я там не увидел.
Аватара пользователя
Eugen Graf

Activity Professionalism Silver Black
guru
guru
Сообщения: 6502
Зарегистрирован: 13 ноя 2007, 02:20
Награды: 4
Версия LabVIEW: 2009
Откуда: Saarbrücken
Контактная информация:

Re: [Задача] Семь нот [до 25.08.2009]

Сообщение Eugen Graf »

Клёво, четыре претендента. Решения интересные, будем разбираться.
Аватара пользователя
FireFly

Activity Black
expert
expert
Сообщения: 1321
Зарегистрирован: 25 апр 2009, 08:58
Награды: 2
Версия LabVIEW: 2014
Откуда: Санкт-Петербург
Поблагодарили: 1 раз

Re: [Задача] Семь нот [до 25.08.2009]

Сообщение FireFly »

Indey, у тебя очепятка в таблице. Столбик "память", строка "вариант №4" - должно быть 2 балла.
Иногда лучше молчать и слыть идиотом, чем заговорить и развеять все сомнения.
Аватара пользователя
Pavel Krivozubov

Activity Bronze
professor
professor
Сообщения: 4421
Зарегистрирован: 07 фев 2008, 16:39
Награды: 3
Версия LabVIEW: 7.0 - 2013
Откуда: г. Электросталь
Благодарил (а): 24 раза
Поблагодарили: 9 раз
Контактная информация:

Re: [Задача] Семь нот [до 25.08.2009]

Сообщение Pavel Krivozubov »

FireFly писал(а):Indey, у тебя очепятка в таблице. Столбик "память", строка "вариант №4" - должно быть 2 балла.
Да, действительно. Спасибо!
Аватара пользователя
mzu2006

Professionalism Tutorials Black
doctor
doctor
Сообщения: 2456
Зарегистрирован: 16 авг 2008, 02:12
Награды: 3
Версия LabVIEW: 7.1 10 11 12
Откуда: St-Petersburg (RU), Phila, Boston, Washington DC
Контактная информация:

Re: [Задача] Семь нот [до 25.08.2009]

Сообщение mzu2006 »

Прежде всего, все 4 решения функциональны в пределах написанного ТЗ: давишь на кнопку и слышишь звук.

Попробую объянить, почему я проголосовал за номер 1.
- правильно выбранная архитектура развязывающая интерфейс и генерацию делает GUI отзывчивым.
- интересное решение, когда можно скользить вдоль клавиатуры мышкой.
- реализовано затухание.
- щелчки менее слышны чем в номере 4.

Основные критерии оценки были предложены Indey
Indey писал(а): Оцениваться будет в основном компактность, удобность и красивость интерфейса.
Красивость интерфейса у всех разная. У номера 3 - перебор с чёрными клавишами. У номера 4 - хочется кликнуть по чёрным клавишам,
а не получается, у номера 2 просто кнопки (неестественно выглядит, ИМХО).

Удобность и функциональность всех 4-х решений отличается, причём отличия в удобности и функциональности
являются следствием выбранных архитектур и особенностей их реализации.

номер 2 рекордсмен по компактности, однако выбранная архитектура приводит к тому, что пока нота не доиграет - интерфейс недоступен.
номер 3 имеет ту же проблему, плюс непонятно как прервать воспроизведение мелодии или гамму (интерфес недоступен).

номера 1 и 4 имеют похожую архитектуру, лишенную этих недостатков, но
1 и 4 имет проблемы со щелчками. 1 при затухании имеет место разрыв в фазе затухания, в обоих проявляются щелчки на менее мошных машинах,
что можно компенсировать либо меняя размер буффера (увеличивая), либо заменив While цикл на Timed Цикл, либо работая с карточкой
на низком уровне (хочется иметь функциональность аналогичную anti-glitching в устройства DAC).

номер 1 имеет некоторое отставание звука от интерфейса, связанное видимо с выбором длины буфера и (или) таймаута

номера 3 и 4 не реализовали затухания.
номер 1 реализовал красивое интерфейсное решение с клавиатурой. Из недостатков номера 1 - непонятная обработка ошибок. Скажем, если
запустить его на машине с отключенной звуковухой. Номер 4 тоже не идеален при обработке ошибок, при ошибке он вываливается с ещё 1
внутренней ошибкой.

при оценке я также смотрел на NI PIANO и на Piano Synthesis.
Аватара пользователя
Forward

Activity Tutorials Black
professional
professional
Сообщения: 337
Зарегистрирован: 03 мар 2008, 12:41
Награды: 3
Версия LabVIEW: 2010
Откуда: Кишинев
Контактная информация:

Re: [Задача] Семь нот [до 25.08.2009]

Сообщение Forward »

Хм... малова-то решений. Думаю, нам все будет интереснее да и полезнее, если их станет больше.
Теперь по теме: все решения работоспособны и в этот раз они больше отличаются друг от друга, чем в прошлый -).
№ 1
- интересный вариант со скольжением мышки по клавишам, что правда приводит к ненужным "движениям" и усложнению кода
- есть возможность менять октавы, + сильный отличительный признак - применена формула пересчета частот, + реализовано затухание
- отставание звука от интерфейса
- имя sub.vi не совсем понятно, description отсутсвует;
- имена контролов/индикаторов (я говорю именно про label, а не caption) на кириллице. Имхо, не корректно. Примерно то же, что обзывать перемменные на кириллице в С/С# или общаться на форуме транслитом и т.п., т.е. бросается в глаза... Повторюсь, данный пункт - ИМХО, которое возможно связано с моим месторасположением, при оценке его не учитывал
№ 2
- реализация проще чем у остальных, выполняет ровно то, что просили по задаче
- экспресс прибор - не оптимально, доп. работа процессора
- создаются лишние констатнты (00:00:00,000 DD.MM.YYYY)
- отставание звука от интерфейса
№ 3
- иконка не является иконкой по умолчанию
- есть возможность записать и проиграть сэмпл, однако идея не доработана до конца
- в коде присутствует состояние пауза, которое используется в сэмпле по умолчанию, но пользователю не доступно
- отставание звука от интерфейса

№ 4
- чтобы добраться до проэкта нужно пройти очень уж много вложенных папок :suicide:
- иконка не является иконкой по умолчанию, + с т.з. качества документации - лидер
- нет отставания звука от интерфейса
- в отличии от предыдущих вариантов используется только одно событие на все кнопки - упрощает код
- при нажатии на клавишу и удерживании ее - звук не пропадает, а-ля "синтезатор", что прада приводит к необходимости переодически крутить цикл, но ИМХО - стоит того

Наиболее важные для меня факты подчеркнул, итого: отдаю голос за вариант 4.
Аватара пользователя
Pavel Krivozubov

Activity Bronze
professor
professor
Сообщения: 4421
Зарегистрирован: 07 фев 2008, 16:39
Награды: 3
Версия LabVIEW: 7.0 - 2013
Откуда: г. Электросталь
Благодарил (а): 24 раза
Поблагодарили: 9 раз
Контактная информация:

Re: [Задача] Семь нот [до 25.08.2009]

Сообщение Pavel Krivozubov »

И так напоминаю - имя победителя будет раскрыто сегодня в 16.00! Просьба голосовать тех, кто еще не голосовал - много времени у вас это не займет, зато результат будет более объективным.
п.с. маловато что-то голосов, всего четыре, как и участников. :cry:
Аватара пользователя
Pavel Krivozubov

Activity Bronze
professor
professor
Сообщения: 4421
Зарегистрирован: 07 фев 2008, 16:39
Награды: 3
Версия LabVIEW: 7.0 - 2013
Откуда: г. Электросталь
Благодарил (а): 24 раза
Поблагодарили: 9 раз
Контактная информация:

Re: [Задача] Семь нот [до 25.08.2009]

Сообщение Pavel Krivozubov »

Остался час. Перевес лидера минимален!
Изображение
Всё еще может изменится :D Голосуем!
п.с. и не забываем обосновывать своё решение. :wink:
Аватара пользователя
Pavel Krivozubov

Activity Bronze
professor
professor
Сообщения: 4421
Зарегистрирован: 07 фев 2008, 16:39
Награды: 3
Версия LabVIEW: 7.0 - 2013
Откуда: г. Электросталь
Благодарил (а): 24 раза
Поблагодарили: 9 раз
Контактная информация:

Re: [Задача] Семь нот [до 25.08.2009]

Сообщение Pavel Krivozubov »

<object width="425" height="344"><param name="movie" value=" name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"></embed></object>
Аватара пользователя
Pavel Krivozubov

Activity Bronze
professor
professor
Сообщения: 4421
Зарегистрирован: 07 фев 2008, 16:39
Награды: 3
Версия LabVIEW: 7.0 - 2013
Откуда: г. Электросталь
Благодарил (а): 24 раза
Поблагодарили: 9 раз
Контактная информация:

Re: [Задача] Семь нот [до 25.08.2009]

Сообщение Pavel Krivozubov »

И так, торжественный момент настал.
Оглашаю имена конкурсантов:
1 - FireFly
2 - Eg
3 - Forward
4 - Mzu
Победителем в данном конкурсе "Семь нот" становится mzu2006!!! :1stplace: :1stplace: :1stplace:
Михаил прими поздравления и медаль :drink:
медаль.PNG
Твоё решение признано самым инновационным, компактным, красивым и ресурсоёмким из всех четырех!
А всем остальным спасибо за участие!
Аватара пользователя
Eugen Graf

Activity Professionalism Silver Black
guru
guru
Сообщения: 6502
Зарегистрирован: 13 ноя 2007, 02:20
Награды: 4
Версия LabVIEW: 2009
Откуда: Saarbrücken
Контактная информация:

Re: [Задача] Семь нот [до 25.08.2009]

Сообщение Eugen Graf »

Круто!!! Мои поздравления mzu2006! Всем огромное спасибо за участие. Ждём следующего понедельника.
Ответить

Вернуться в «Конкурсы»