Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 18.10.2009
Сообщений: 10

Обработка результатов теннисных матчей.

19.10.2009, 21:43. Показов 2006. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток. Вот такая дилемма, помогите с программкой обработки результатов теннисных матчей

В текстовом файле задан список участников теннисного турнира. Матчи проводятся по кубковой системе до 3 выигранных сетов одним из участников (3...5 сетов). Матч состоит из сетов, сет из геймов, а гейм - из розыгрышей мячей.

В матче побеждает тот, кто первым выиграет 3 сета. Сет состоит из геймов. Для победы в сете нужно выиграть 6 геймов (как минимум), но так, чтобы противник выиграл хотя бы на 2 гейма меньше. Если этого не получается и счет становится 6:6, проводится тайм-брейк. В итоге победный счет в сете может быть 6:0, 6:1, 6:2, 6:3, 6:4, 6:5, 7:0, 7:6. Если дело дойдет до 5-го сета, в нем тайм-брейк не проводится, а игра продолжается до разницы в 2 выигранных гейма (например, счет может быть 16:14).
Гейм подобен сету. Для победы в гейме нужно набрать минимум 4 очка, но так, чтобы у противника было хотя бы на 2 очка меньше. При этом за каждое очко в гейме набирается определенное количество баллов. Счет в неоконченном гейме может быть:
0/0, 15/0, 30/0, 40/0, 0/15, 15/15, 30/15, 40/15, 0/30, 15/30, 30/30, 40/30, 0/40, 15/40, 30/40, ровно (40/40), меньше, больше. После счета 40/40 принято называть не числа, а “ровно”, “меньше” и “больше” - с точки зрения подающего игрока.
В течение одного гейма все мячи подает один и тот же игрок. В следующем гейме подающий меняется. Кто подает первым, определяется розыгрышем одного мяча. В следующем сете начинает подавать тот игрок, который в предыдущем сете принимал последним, независимо от того, был гейм обычным или тайм-брейком. При розыгрыше 6 геймов в сете, независимо от счета, игроки меняются сторонами корта.
Правила тайм-брейка:
На тайм-брейке нужно набрать не меньше 7 очков (выиграть отдельных розыгрышей мяча), но так, чтобы у противника было хотя бы на 2 очка меньше. Первый игрок подает 1 раз, следующие 2 мяча подает соперник, затем 2 мяча опять 1-й игрок и так далее.
И в обычном гейме и на тайм-брейке существует опасность двойной ошибки (подача в сетку или в аут). Одиночная ошибка прощается, но за двойную очко начисляется сопернику.

Входные данные:
Файл содержит результаты каждого розыгрыша мяча всех матчей турнира, уже проведенных или еще незаконченных. Самый первый розыгрыш определяет, кто будет подавать первым. Затем начинаются розыгрыши геймов. Все содержимое файла - это наборы символов 1 (если мяч выиграл первый игрок пары) и 2 (если второй). Программа должна по шагам отображать счет каждого гейма и сета после каждого розыгрыша. Когда матч будет закончен, начинается новый матч, пока не закончатся входные данные. Пары игроков берутся из файла со списком участников (их количество - 2 в степени N). Если список участников закончится раньше, чем данные о розыгрышах, формируются новые пары из победителей первого тура и т.д. Когда останется 1 участник, остальные данные нужно отбросить.

Выходные данные:
Список завершенных матчей с результатами вида:
------------------------------------------------
|1/8 финала |
|Агасси - Сафин 6:4 2:6 6:7 3:6 |
|Куэртен - Крайчек 7:5 6:1 6:2 |
|... |
|Финал |
|Сафин - Эдберг 6:4 4:6 5:7 6:3 9:7 |
------------------------------------------------
|Победитель турнира: Сафин |
------------------------------------------------
Если данные закончатся раньше последняя строка: “турнир продолжается...”
Для заполнения файла розыгрышей лучше написать программу случайной генерации чисел.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
19.10.2009, 21:43
Ответы с готовыми решениями:

Написать программу результатов матчей футбольных команд (Используя контейнер map)
Помогите пожалуйста, никогда не имела дела с контейнерами((( Задание: футбольные команды (через map). Пользователь вводит название...

Генератор результатов футбольных матчей
Здравствуйте, хочу попросить помощи в написание/ресурсов/советов одного интересующего меня php кода (Таком себе упрощенному генераторе...

Статистическая обработка результатов
Построить статистическую обработку результатов прямых многократных измерений.

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
19.10.2009, 21:43
Помогаю со студенческими работами здесь

БПФ(обработка результатов)
Доброго времени суток. Разбираюсь с данным алгоритмом, только не понятно, как графически обработать результат. Допустим есть какой то...

Обработка результатов оценок
Написать программу, которая обрабатывает результат экзамена. Для каждой оценки программа должна вычислить процент от общего количества...

Обработка результатов экзамена.
Нужна программа которая которая обрабатывает результаты экзамена. Для каждой оценки программа должна вычислить процент от общего количества...

Обработка результатов поиска
Здравствуйте Прошу помощи в следующей проблеме. Имеется большой текст, в нем имеются заголовки вида Заголовок статьи, подобных заголовков...

Обработка результатов экзамена
помощи ищу) Написать программу которая обрабатывает результаты экзамена.Для каждой оценки программа должна вычислить процент от общего...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru