Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.143.214.230] |
|
Страницы: (18) « Первая ... 15 16 [17] 18 все ( Перейти к последнему сообщению ) |
Прикр. сообщ.
#1
,
|
|
|
Конкурс: "Разработка Windows-приложений в среде Delphi - взаимодействие с системой, проектирование, кодирование"
Внимание ! Сроки объявления победителя конкурса и публикации решений(и их разбора) переносятся. (Решений много, причем нетривиальных, что радует ) Ориентровочно до 14.12.2009 (благими намереньями путь в ад выстелен ) Следите за объявлениями. Просьба отнестись с пониманием Призы За первое место - 1 DGM. Коробочка Windows Vista Home Premium (Russian). За второе место - 1 DGM. Рюкзак Centrix Trend серо-черный с надписью "Майкрософт". За третье место – 1 DGM. Футболка разм. 46/170 желтая, с надписью "Майкрософт Виртуализация". Выбор победителя Победа в конкурсе подразумевает 100% правильное решение хотя бы одной задачи. Победителем будет считаться конкурсант, полностью решивший хотя бы одну задачу и суммарно набравший максимальное количество баллов. При отсутствии решений в соответствии с вышесказанным условием конкурс может быть признан недействительным. Критерии оценки правильности решения будут указаны в тексте задачи. По результатам конкурса будет только один победитель. Если решений, которые претендуют на победу, больше – то, будет проведен второй тур. Разработчики: CodeMonkey, Romkin, --Ins--, P.O.D Состав жюри: P.O.D, CodeMonkey, --Ins--, Romkin Состав комисии: ViktorXP, Riply Список претендентов на победу: Демо osmiy74 Alexander N Frees andrew.virus arj99 Lumen Profi mmihaylovich Rulikkk THandle bems RedCliphAloe Aristarh Dark Amphiluke Lowimuz MetalFan Felan antonn @!!ex Наиль Keeper89 prizrak39 Pavia kemiisto Stalker.mg El Burro PEAKTOP Ofer Maksim V. ttiger -darkmamba- vovksextra alexeis1 sourceman Mustitz Marriage SergGG |
Сообщ.
#241
,
|
|
|
Riply, понимаем
А я вот только спросить хотел как продвигаются дела... |
Сообщ.
#242
,
|
|
|
Цитата Riply @ Сроки объявления победителя конкурса и публикации решений(и их разбора) переносятся. (Решений много, причем нетривиальных, что радует ) Ориентровочно до 14.12.2009 (благими намереньями путь в ад выстелен ) Следите за объявлениями. Внимание ! Жюри вынуждено снова отодвинуть сроки Как оказалось, довольно непросто не только объективно оценить все решения в рамках "своей тематики", но и подвести общий баланс по всем тематикам для каждого участника. Еще сложнее выбрать победителя (один дал супер-пупер решение, а другой: пупер-супер. Кто из них лучше справился ? ) Так же время терялось на всевозможных технических моментах. Например, решение собирается только под определенной версией среды (2007 или 2010). Членам жюри приходилось где-то и как-то раздобывать эту версию и устанавливать у себя на машине. (Плюс не все версии мирно уживаются друг с другом) И т.д. и т.п. Мы приносим свои извинения и посим дать нам еще недельку. Новый и (как я надеюсь ) окончательный срок: 21.12.2009. Спасибо за понимание |
Сообщ.
#243
,
|
|
|
Цитата Riply @ Еще сложнее выбрать победителя (один дал супер-пупер решение, а другой: пупер-супер. Кто из них лучше справился ? ) Да обоим дать первое место Цитата Riply @ Мы приносим свои извинения и посим дать нам еще недельку. Новый и (как я надеюсь ) окончательный срок: 21.12.2009. От меня личная просьба - постарайтесь уж к этому времени, не продлевайте до 28. У меня с 29 зачеты, не хотелось бы прям перед ними получить еще один повод для окончательного ухудшения настроения Так же надеюсь на понимание |
Сообщ.
#244
,
|
|
|
Цитата THandle @ не хотелось бы прям перед ними получить еще один повод для окончательного ухудшения настроения Выдержка из подслушанного диалога: - Я так расстроен. Не сумел занять первое место в конкурсе по программированию. - Да.. Обидно. А кто там еще участвовал ? - Я помню только некотрых: Кнут, Александреску, Руссинович, Рутковская... |
Сообщ.
#245
,
|
|
|
Цитата Riply @ Выдержка из подслушанного диалога: - Я так расстроен. Не сумел занять первое место в конкурсе по программированию. - Да.. Обидно. А кто там еще участвовал ? - Я помню только некотрых: Кнут, Александреску, Руссинович, Рутковская... Ох уж эти, фаны! Все время берут себе ники в честь знаменитостей... |
Сообщ.
#246
,
|
|
|
Цитата THandle @ От меня личная просьба - постарайтесь уж к этому времени, не продлевайте до 28. У меня с 29 зачеты, не хотелось бы прям перед ними получить еще один повод для окончательного ухудшения настроения А то и под Новый Год его можно испортить |
Сообщ.
#247
,
|
|
|
Очень интересно посмотреть на решения получившие 1ые места.
|
Сообщ.
#248
,
|
|
|
Цитата -darkmamba- @ Очень интересно посмотреть на решения получившие 1ые места. Все решения увидим-) |
Сообщ.
#249
,
|
|
|
Не позднее чем завтра ждем мы результатов конкурса... Давайте же уже их!!!
У меня терпение заканчивается)) |
Сообщ.
#250
,
|
|
|
Цитата THandle @ У меня терпение заканчивается)) Только не надо брать в руки ломик |
Сообщ.
#251
,
|
|
|
Товарищи, прошу прощения, это моя вина.
Предновогодний аврал на работе, плюс я на неделю из России по надобности свалил - соответственно, не было возможностей посидеть над проверками. |
Сообщ.
#252
,
|
|
|
ТАК КОГДА ЖЕ ВСЕ ТАКИ РЕЗУЛЬТАТЫ???
Я ночь не спал, я завтрак не доел. Сегодня? В этом году? В следующем? Добавлено Цитата Демо @ Только не надо брать в руки ломик Уговорил, возьму лом. |
Сообщ.
#253
,
|
|
|
THandle, скоро начнем. Медленно и со вкусом
|
Сообщ.
#254
,
|
|
|
Итак, о первом задании.
Мое решение: function B(F: String; C: Char): DWORD; var S: String; begin { Обрабатываются все исключительные ситуации, которые могут возникнуть во время выполнения функции } try { Открываем файл для чтения/записи } with TFileStream.Create(F, 2) do begin { Устанавливаем длину строки, в которую будет произведено считывание из файла } SetLength(F, Size); { Считываем текст из файла в строку F } Read(F[1], Size); { Присваиваем переменной S символ, максимальное количество вхождений которого необходимо найти в строке F } S := C; { Ищем такое количество знаков C, какое уже не входит в строку F } while Pos(S, F) <> 0 do S := S + C; { Находим в строке F все пары рядом идущих символов C и удаляем один из них } while Pos(C + C, F) <> 0 do Delete(F, Pos(C + C, F), 1); { В строке S находится такое количество символов C, которое уже не входит в строку F. Количество символов C, на 1 меньшее, чем в строке S и является результатом выполнения функции } B := Length(S) - 1; { Очищаем поток, чтобы записать в него данные и не оставить ничего лишнего } Size := 0; { Записываем данные в файл } Write(F[1], Length(F)); { Освобождаем память за экземпляром TFileStream } Free end except { Если произошла какая-то ошибка, то возвращаем 0 } B := 0 end end; В 2009+ код работать естественно не будет, так как используются строки String - ANSI. Но где сказано про юникод? Цитата до 7 включительно. Цитата Все строки и символы - Ansi (юникод не встречается). Я так и понял - строки ANSI. Надо было написать тогда чтобы код работал и в 2009+. Цитата Riply @ К сожалению, последние 5 участников не прошли тесты на следующем файле (символ для поиска a): assaas asdasda aaaaaaaaaasdasdasda asdas asdsaas,asd asas-d0a-s asd as aaaaaaaaaaa asda asda asda aaaaaaaaaaaaa-aa-aaaa,asdm,asaaa asdasaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa123a А на других значит работает? На данном файле в Delphi 7 результат верный - 33 символа a. Так бы и формулировали - не прошла тест из за неподдержки Юникода. Видимо проверки проводились только в новых версиях. А это, товарищи, не правильно. Можно было бы сделать конечно и так: type U = AnsiString; function B(F: U; C: Char): DWORD; var S: U; begin { Обрабатываются все исключительные ситуации, которые могут возникнуть во время выполнения функции } try { Открываем файл для чтения/записи } with TFileStream.Create(F, 2) do begin { Устанавливаем длину строки, в которую будет произведено считывание из файла } SetLength(F, Size); { Считываем текст из файла в строку F } Read(F[1], Size); { Присваиваем переменной S символ, максимальное количество вхождений которого необходимо найти в строке F } S := C; { Ищем такое количество знаков C, какое уже не входит в строку F } while Pos(S, F) <> 0 do S := S + C; { Находим в строке F все пары рядом идущих символов C и удаляем один из них } while Pos(C + C, F) <> 0 do Delete(F, Pos(C + C, F), 1); { В строке S находится такое количество символов C, которое уже не входит в строку F. Количество символов C, на 1 меньшее, чем в строке S и является результатом выполнения функции } B := Length(S) - 1; { Очищаем поток, чтобы записать в него данные и не оставить ничего лишнего } Size := 0; { Записываем данные в файл } Write(F[1], Length(F)); { Освобождаем память за экземпляром TFileStream } Free end except { Если произошла какая-то ошибка, то возвращаем 0 } B := 0 end end; Но!!! Сказано - написать функцию. Значит такой вариант должен считаться неверным - объявления типа уже вне функции. В общем: Я согласен, мой код не поддерживает Юникод, но в предыдущих версиях он отлично работает. В связи с туманным упоминанием юникода в тексте задания прошу мой вариант засчитать как подобает - 262 символа. Ну и что нибудь конечно за неподдержку юникода вычесть можно. Но это вернное решение задания и никак оно не тянет на 10 баллов. |
Сообщ.
#255
,
|
|
|
THandle, рассмотрим. Надо подождать автора задания.
|