Счетчик времени для игры Бочча

VI Международный конкурс научно-исследовательских и творческих работ учащихся
Старт в науке

Счетчик времени для игры Бочча

Васильев М.С. 1
1ГБПОУ Колледж автоматизации и информационных технологий №20
Попов С.в. 1
1ГБПОУ Колледж автоматизации и информационных технологий №20
Автор работы награжден дипломом победителя III степени
Текст работы размещён без изображений и формул.
Полная версия работы доступна во вкладке "Файлы работы" в формате PDF

Введение

Бочча – паралимпийский вид спорта для людей с ДЦП и другими тяжелыми поражениями опорно-двигательного аппарата. Это игра кожаными мячами. Используются 6 красных, 6 синих и один белый мяч. Игра бывает индивидуальной (соревнуются 2 игрока, один против другого), в парах (соревнуются 2 пары игроков) и тройки (соревнуются мини команды по 3 человека). Перед началом игры разыгрывается цвет мячей для каждой стороны. Цель игры – расположить как можно больше своих мячей до ближайшего к Джеку (белому мячу) мяча соперника.

Игроки делятся на 4 класса, согласно их функциональным возможностям для более справедливой конкуренции. (ВС1, ВС2, ВС3, ВС4)

Игры ведутся в 7-ми видах программы:

Индивидуальная ВС1

Индивидуальная ВС1

Индивидуальная ВС1

Индивидуальная ВС1

Пары ВС3

Пары ВС4

Тройки ВС1+ВС2

Стороны (игроки, пары, тройки) имеют на свои броски строго отведенное время. Для каждого вида программы время установлено следующим образом:

Лимиты таковы:

• ВС1 – 5 минут для спортсмена в одном периоде/энде

• ВС2 – 4 минуты для спортсмена в одном периоде/энде

• ВС3 – 6 минут для спортсмена в одном периоде/энде

• ВС4 – 4 минуты для спортсмена в одном периоде/энде

• Тройки ВС1+ВС2 – 6 минут для команды в одном периоде/энде

• Пары ВС3 – 7 минут для пары в одном периоде/энде

• Пары ВС4 – 5 минут для пары в одном периоде/энде

Время игры учитывается и контролируется судьей-хронометристом на всех соревнованиях.

Бросок Джека (белого мяча) считается частью времени Стороны. Время каждой Стороны начинается с того момента, когда судья указывает хронометристу, какая Сторона бросает, включая Джек. Время останавливается, когда брошенный мяч останавливается в пределах корта или пересекает границы корта. Если какая-либо Сторона по истечении лимита времени не бросила мяч, то он и все оставшиеся мячи этой Стороны считаются недействительными (не брошенными) и не могут быть сыграны в этом периоде.

Учет времени очень важен, также важно, чтобы игроки видели время и могли контролировать свои действия.

В Игре также используется табло для демонстрации счета. Табло для счёта должно располагаться в таком месте, откуда бы его могли видеть спортсмены, участвующие в игре.

Международная федерация бочча стремится, чтобы учет времени везде, где это возможно велся электронным способом.

Программа учета времени

Настоящая Программа учета времени и результатов игры разработана именно для электронного учета времени и позволяет вводить и видеть на экране следующие изменяемые параметры:

Фамилию имя участника игры

Порядковый номер энда (периода)

Результаты (очки каждой стороны) Считаются накопительным итогом во всех периодах для каждой стороны.

Время каждой стороны.

Главный экран программы приведен на рис. 1.

Рис. 1

Инструкция пользователю

Выставление таймеров на 4 минуты – клавиша -4

Выставление таймеров на 5 минут – клавиша -5

Выставление таймеров на 6 минут – клавиша -6

Выставление таймеров на 7 минут – клавиша -7

Клавиши работают только в английском регистре

Запуск таймеров

Запуск красных – z, остановка – x

Запуск синих – c, остановка – v

Добавление очков

Красные – добавление очка (+1) – клавиша 1

Красные – убавление очка (-1) – клавиша 2

Синие – добавление очка (+1) – клавиша 9

Синие – убавление очка (-1) – клавиша 0

Изменение энда

Прибавление – q

Убавление - w

Описание программы

Программа реализована на языке VB.NET в системе программирования Visual Studio 2017. Главная форма программы приведена на рис. 2. Далее приведен текст самой программы.

Рис. 2

PublicClassForm1

Public countred, countblue, score, score1, end_ AsInteger

PrivateSub Timer2_Tick(sender AsObject, e As EventArgs) Handles Timer2.Tick

countblue = countblue - 1

updatelabal1()

If countblue = 0 Then

Timer2.Enabled = False

EndIf

EndSub

PrivateSub Label3_Click(sender AsObject, e As EventArgs) Handles Label3.Click

EndSub

PrivateSub Panel4_Paint(sender AsObject, e As PaintEventArgs) Handles Panel4.Paint

EndSub

PrivateSub Timer1_Tick(sender AsObject, e As EventArgs) Handles Timer1.Tick

countred = countred - 1

updatelabal1()

If countred = 0 Then

Timer1.Enabled = False

EndIf

EndSub

PrivateSub Form1_Load(sender AsObject, e As EventArgs) HandlesMyBase.Load

Timer1.Enabled = False

Timer2.Enabled = False

end_ = 0

score = 0

score1 = 0

countred = 120

countblue = 120

Label7.Text = InputBox("Крассные: введитеимяигрока ")

Label9.Text = InputBox("Синие: введитеимяигрока ")

updatelabal1()

EndSub

PrivateSub Form1_KeyPress(sender AsObject, e As KeyPressEventArgs) HandlesMe.KeyPress

If e.KeyChar = "4"Then

countred = 240

countblue = 240

updatelabal1()

EndIf

If e.KeyChar = "5"Then

countred = 300

countblue = 300

updatelabal1()

EndIf

If e.KeyChar = "6"Then

countred = 360

countblue = 360

updatelabal1()

EndIf

If e.KeyChar = "7"Then

countred = 420

countblue = 420

updatelabal1()

EndIf

If e.KeyChar = "z"Then

Timer1.Enabled = True

EndIf

If e.KeyChar = "x"Then

Timer1.Enabled = False

EndIf

If e.KeyChar = "c"Then

Timer2.Enabled = True

EndIf

If e.KeyChar = "v"Then

Timer2.Enabled = False

EndIf

If e.KeyChar = "1"Then

If score < 36 Then

score = score + 1

Label3.Text = score

EndIf

EndIf

If e.KeyChar = "2"Then

If score > 0 Then

score = score - 1

Label3.Text = score

EndIf

EndIf

If e.KeyChar = "9"Then

If score1 < 36 Then

score1 = score1 + 1

Label4.Text = score1

EndIf

EndIf

If e.KeyChar = "0"Then

If score1 > 0 Then

score1 = score1 - 1

Label4.Text = score1

EndIf

EndIf

If e.KeyChar = "q"Then

If end_ < 6 Then

end_ = end_ + 1

Label6.Text = end_

EndIf

EndIf

If e.KeyChar = "n"Then

Label6.Text = "T"

EndIf

If e.KeyChar = "w"Then

If end_ > 0 Then

end_ = end_ - 1

Label6.Text = end_

EndIf

EndIf

EndSub

PrivateFunction updatelabal1()

Label1.Text = Format(Math.Floor(countred / 60) & ":" & countred Mod 60)

Label2.Text = Format(Math.Floor(countblue / 60) & ":" & countblue Mod 60)

End Function

End Class

Просмотров работы: 135