记分员计分程序

it2026-08-07  15

需求:作为一名现场记分员,我希望详细记录比赛现场比分增长情况,以便观众及运动员、教练员及时掌握比赛状况。(满意条件:每一次比分的改变,都要形成一条记录)。

 

计划:估计此次工作需要一周的时间。

 

 

设计文档:

根据《2015-2016赛季中国排球联赛竞赛规程》,计分规则如下:

1、目前的排球比赛采用五局三胜制。前四局每局25分,每局比赛完成后交换场地,达到24分时,必须比赛的双方相差2分才能分出胜负;决胜局为15分,比赛的双方任何一方先达到8分时,交换场地继续比赛,当双方同时达到14分时候,也是必须相差两分才能决出胜负。排球计分的发展历程:1917年规定每局为15分。1918年规定上场运动员每队为6人。1922年规定每方必须在3次以内将球击过网。比赛方法以前采用发球得分制,1998年10月28日国际排联决定改为每球得分制,仍为五局三胜,前四局每局先得25分者为胜,第五局先得15分者为胜,若出现24平或14平时,要继续比赛至某队领先2分才能取胜。

2、每点击一次按钮,分数列表就增加一行。

3、己方失误时。对方增加一分。

 

代码规范:使用C#语言标准、帕斯卡命名法和骆驼命名法 。

 

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"><html lang="en"><head>    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">    <title>排球记分员</title>    <style type="text/css">     body{        }#Mian table{    margin: 100px auto auto auto;    text-align: center;     color: Red;     font-size:28px;     font-family:微软雅黑 Light;     width:1000px;}#TeamData table{    margin: 100px auto auto auto;    text-align: center;     color: Red;     font-size:20px;     font-family:微软雅黑 Light;}#TeamData table td{ width:240px;}    </style>    <script>  var h=0;  var t=0;      function insRow(var1)  {      h=h+1;  var n=document.getElementById('myTable').rows.length;  console.log(n);  var x=document.getElementById('myTable').insertRow(n);  var y=x.insertCell(0);  var z=x.insertCell(1);  var v=x.insertCell(2);  var f=x.insertCell(3);  y.innerHTML="";  z.innerHTML="";  v.innerHTML=var1;  f.innerHTML=h;  }      function addRow(var1)  {      t=t+1;  var n=document.getElementById('myTable').rows.length;  console.log(n);  var x=document.getElementById('myTable').insertRow(n);  var y=x.insertCell(0);  var z=x.insertCell(1);  var v=x.insertCell(2);  var f=x.insertCell(3);  v.innerHTML="";  f.innerHTML="";  y.innerHTML=var1;  z.innerHTML=t;  }   function delRow()   {      var n=document.getElementById('myTable').rows.length-1;      document.getElementById('myTable').deleteRow(n);       }    function Erra()    {        h=h+1;         var n=document.getElementById('myTable').rows.length;  var x=document.getElementById('myTable').insertRow(n);  var y=x.insertCell(0);  var z=x.insertCell(1);  var v=x.insertCell(2);  var f=x.insertCell(3);  v.innerHTML="";  f.innerHTML=h;  y.innerHTML="";  z.innerHTML="失误";        } function Errb()    {        t=t+1;         var n=document.getElementById('myTable').rows.length;  var x=document.getElementById('myTable').insertRow(n);  var y=x.insertCell(0);  var z=x.insertCell(1);  var v=x.insertCell(2);  var f=x.insertCell(3);  v.innerHTML="";  f.innerHTML="失误";  y.innerHTML="";  z.innerHTML=t;        }    </script></head><body>    <div id="Mian">    <table id="sum"  border="0">  <tbody>    <tr>      <td><input type="button" value="2"  onClick="addRow(value)"></td>      <td><input type="button" value="9"  onClick="addRow(value)"></td>      <td>中&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;国</td>      <td>:</td>      <td>塞尔维亚</td>      <td><input type="button" value="10"  onClick="insRow(value)"></td>      <td><input type="button" value="19"  onClick="insRow(value)"></td>    </tr>     <tr>      <td><input type="button" value="12"  onClick="addRow(value)"></td>      <td><input type="button" value="10"  onClick="addRow(value)"></td>       <td rowspan="3">03</td>       <td rowspan="3">:</td>       <td rowspan="3">04</td>      <td><input type="button" value="9"  onClick="insRow(value)"></td>      <td><input type="button" value="6"  onClick="insRow(value)"></td>    </tr>     <tr>      <td><input type="button" value="1"  onClick="addRow(value)"></td>      <td><input type="button" value="17"  onClick="addRow(value)"></td>      <td><input type="button" value="16"  onClick="insRow(value)"></td>      <td><input type="button" value="15"  onClick="insRow(value)"></td>    </tr>      <tr>      <td><input type="button" value="11"  onClick="addRow(value)"></td>      <td><input type="button" value="6"  onClick="addRow(value)"></td>      <td><input type="button" value="17"  onClick="insRow(value)"></td>      <td><input type="button" value="3"  onClick="insRow(value)"></td>    </tr>     <tr>      <td><input type="button" value="3"  onClick="addRow(value)"></td>      <td><input type="button" value="7"  onClick="addRow(value)"></td>      <td>0</td>      <td>:</td>      <td>0</td>      <td><input type="button" value="2"  onClick="insRow(value)"></td>      <td><input type="button" value="8"  onClick="insRow(value)"></td>    </tr>     <tr>      <td><input type="button" value="16"  onClick="addRow(value)"></td>      <td><input type="button" value="5"  onClick="addRow(value)"></td>      <td><button  onClick="delRow()">误判减分</button>&nbsp;&nbsp;<input type="button" value="失误"  onClick="Erra()"></td>      <td></td>      <td><button onClick="addRow()">误判减分</button>&nbsp;&nbsp;<input type="button" value="失误"  onClick="Errb()"></td>      <td><input type="button" value="1"  onClick="insRow(value)"></td>      <td><input type="button" value="13"  onClick="insRow(value)"></td>    </tr>  </tbody></table></div><div id="TeamData"><table id="myTable" border="1"><tr><td colspan="2">A队</td><td colspan="2">B队</td></tr><tr><td>中国队员&nbsp;&nbsp;&nbsp;&nbsp;</td><td>累计得分</td><td>塞尔维亚队员</td><td>累计得分</td></tr></div></body></html>

 

 

using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;using Moudel;using VolleyballBll;

namespace VolleyballUI{    public partial class Main : System.Web.UI.Page    {         private  Game game = new Game();

        private GameBll gamebll = new GameBll();

        protected void Page_Load(object sender, EventArgs e)        {            if (!IsPostBack)            {                TeamA.Text=Request.QueryString["TeamA"];                TeamB.Text=Request.QueryString["TeamB"];                Game game = new Game();                game.TeamA = TeamA.Text;                game.TeamB = TeamB.Text;                if (gamebll.GetInsertGame(game))                {                     Response.Write("<script>alert('比赛开始!')</script>");                }            }        }

        public void Add(string ab)        {            game.PsA = Convert.ToInt32( PsA.Text);            game.PsB = Convert.ToInt32(PsB.Text);            game.ScoreA = Convert.ToInt32(ScoreA.Text);            game.ScoreB = Convert.ToInt32(ScoreB.Text);            game.PartNum = game.PsA + game.PsB;            if (ab == "a")            {                game.ScoreA += 1;                ScoreA.Text = game.ScoreA.ToString();                one();                Victory();            }            else             {                game.ScoreB += 1;                ScoreB.Text = game.ScoreB.ToString();                one();                Victory();            }

        }

        protected void AddA_Click(object sender, EventArgs e)        {            string ab = "a";            Add(ab);        }

        protected void AddB_Click(object sender, EventArgs e)        {            string ab = "b";            Add(ab);        }

        public void one()        {            if (game.PartNum < 4)//前四局的加分计算和判断。            {                if (game.ScoreA >= 24 && game.ScoreB >= 24)//当两队24分平的情况。                {                    if (Math.Abs(game.ScoreA - game.ScoreB) == 2)                    {                        if (game.ScoreA > game.ScoreB)                        {                            game.PsA += 1;                            PsA.Text = game.PsA.ToString();                            game.ScoreA = 0;                            ScoreA.Text = game.ScoreA.ToString();                            game.ScoreB = 0;                            ScoreB.Text = game.ScoreB.ToString();                        }                        else                        {                            game.PsB += 1;                            PsB.Text = game.PsB.ToString();                            game.ScoreA = 0;                            ScoreA.Text = game.ScoreA.ToString();                            game.ScoreB = 0;                            ScoreB.Text = game.ScoreB.ToString();                        }                    }                }                else if(game.ScoreA<24||game.ScoreB<24) //当两队没有达到24分平的时候。                {                    if (game.ScoreA == 25)                    {                        game.PsA += 1;                        PsA.Text = game.PsA.ToString();                        game.ScoreA = 0;                        ScoreA.Text = game.ScoreA.ToString();                        game.ScoreB = 0;                        ScoreB.Text = game.ScoreB.ToString();                    }                    else if (game.ScoreB == 25)                    {                        game.PsB += 1;                        PsB.Text = game.PsB.ToString();                        game.ScoreA = 0;                        ScoreA.Text = game.ScoreA.ToString();                        game.ScoreB = 0;                        ScoreB.Text = game.ScoreB.ToString();                    }                }            }            else if (game.PartNum == 4)//第五局的加分计算和判断。            {                if (game.ScoreA >= 14 && game.ScoreB >= 14)//当两队24分平的情况。                {                    if (Math.Abs(game.ScoreA - game.ScoreB) == 2)                    {                        if (game.ScoreA > game.ScoreB)                        {                            game.PsA += 1;                            PsA.Text = game.PsA.ToString();                        }                        else                        {                            game.PsB += 1;                            PsB.Text = game.PsB.ToString();                        }                    }                }                else if (game.ScoreA < 14 || game.ScoreB < 14) //当两队没有达到24分平的时候。                {                    if (game.ScoreA == 15)                    {                        game.PsA += 1;                        PsA.Text = game.PsA.ToString();                    }                    else if (game.ScoreB == 15)                    {                        game.PsB += 1;                        PsB.Text = game.PsB.ToString();                    }                }            }            else            {                Response.Write("<script>alert('比赛已结束');</script>");            }        }

        public void Victory()        {            if (game.PsA==3||game.PsB==3)            {                game.ScoreA = 0;                ScoreA.Text = game.ScoreA.ToString();                game.ScoreB = 0;                ScoreB.Text = game.ScoreB.ToString();                AddA.Visible = false;                AddB.Visible = false;                Response.Write("<script>alert('比赛已结束');</script>");            }        }    }}

转载于:https://www.cnblogs.com/bokeyuan6/p/6569144.html

相关资源:一个用matlab编写的,用于估计信号谐波个数的程序,堪称经典
最新回复(0)