排球记分员计分程序(七)————程序截图与运行效果

本文介绍了一个简单的排球比赛计分系统的实现方法,通过JavaScript实现了得分加减、局点和赛点的判断逻辑,以及比赛胜负的判定。

上一篇中要调用的函数代码:

    <script>
        //中国队
        function Add()//得分+1
        {
            //1.当比赛双方的队伍的总比分都小于2的时候
            //例如0:0或者1:0或者0:1或者1:1
            if (document.getElementById('ZongChinaA').value < 2 && document.getElementById('ZongB').value < 2)
            {
                //判断拿到赛点的这支队伍的本局局比分是否大于或等于25,并且此时的双方本局局比分相差大于2分
                if (document.getElementById('JuChinaA').value >=25 &&
                    document.getElementById('JuChinaA').value - document.getElementById('JuB').value >= 2)
                    //本局获胜的队伍的总比分+1,双方的局比分清零,开始下一局的计分
                {
                    //把本局的最终局比分保存并记录到专门显示各局局比分的界面位置中
                    //中国队的第一局的最终局比分
                    document.getElementById('JuFen1').value = document.getElementById('JuChinaA').value;
                    //塞尔维亚队的第一局的最终局比分
                    document.getElementById('JuFen01').value = document.getElementById('JuB').value;
                    //中国队的总比分+1
                    document.getElementById('ZongChinaA').value++;
                    //双方本局局比分归0
                    document.getElementById('JuChinaA').value = 0;
                    document.getElementById('JuB').value = 0;

                }
                    //否则继续得1分,+1分
                else
                {
                    //该队员的个人得分+1
                    document.getElementById('china1').value++;
                    //该队员所在队伍的本局局比分+1
                    document.getElementById('JuChinaA').value++;
                   
                }
            }

            //2.当比赛的其中一只队伍的总比分为2,就是拿到此次比赛的决胜赛点时,并且此时比赛不是第五局的时候
            //例如2:0或者2:1或者0:2或者1:2
            else if (document.getElementById('ZongChinaA').value == 2 && document.getElementById('ZongB').value < 2)
            {
                //最后一局的本局局比分是否大于或等于25,并且此时的双方本局局比分相差大于2分,比赛结束
                if (document.getElementById('JuChinaA').value >= 25 &&
                    document.getElementById('JuChinaA').value - document.getElementById('JuB').value >= 2)
                {
                    document.write(比赛结束);
                }
                else
                {
                    //得分未达到25时,继续得1分,+1分
                    document.getElementById('china1').value++;
                    document.getElementById('JuChinaA').value++;
                }

            }

            //3.接着判断当比赛双方的队伍的总比分都为2,就是都拿到此次比赛的决胜赛点时,此时的比赛是第五局的时候
            //例如2:2
            else if (document.getElementById('ZongChinaA').value == 2 && document.getElementById('ZongB').value == 2)
            {
                //最后一局的局分达到15分,比赛结束
                if (document.getElementById('JuChinaA').value >= 15)
                {
                    document.write(比赛结束);
                }
                else
                {
                    //得分未达到15时,继续得1分,+1分
                    document.getElementById('china1').value++;
                    document.getElementById('JuChinaA').value++;
                }
            }

            //4.不符合以上几种情况时  
            else {
                document.write(程序运行错误);
            }
           
        }

        function Add1()//得分-1分
        {
            //该队员的个人得分-1
            document.getElementById('china1').value--;
            //该队员所在队伍本局局比分-1
            document.getElementById('JuChinaA').value--;
        }

    </script>
    <script>
        //塞尔维亚队
        function jia()//得分+1分
        {
            //所运用的函数方法的运算逻辑同上面中国队的一样
            //1.当比赛双方的队伍的总比分都小于2的时候
            //例如0:0或者1:0或者0:1或者1:1
            if (document.getElementById('ZongB').value < 2 && document.getElementById('ZongChinaA').value < 2)
            {
                if (document.getElementById('JuB').value >= 25 &&
                    document.getElementById('JuB').value - document.getElementById('JuChinaA').value >= 2)
                {
                    document.getElementById('ZongB').value++;
                    document.getElementById('JuB').value = 0;
                    document.getElementById('JuChinaA').value = 0;
                }
                else
                {
                    document.getElementById('sai1').value++;
                    document.getElementById('JuB').value++;
                }
            }

            //2.当比赛的其中一只队伍的总比分为2,就是拿到此次比赛的决胜赛点时,并且此时比赛不是第五局的时候
            //例如2:0或者2:1或者0:2或者1:2
            else if (document.getElementById('ZongB').value == 2 && document.getElementById('ZongChinaA').value < 2)
            {
                if (document.getElementById('JuB').value >= 25 &&
                    document.getElementById('JuB').value - document.getElementById('JuChinaA').value >= 2)
                {
                    document.write(比赛结束);
                }
                else
                {
                    document.getElementById('sai1').value++;
                    document.getElementById('JuB').value++;
                }
            }

            //3.接着判断当比赛双方的队伍的总比分都为2,就是都拿到此次比赛的决胜赛点时,此时的比赛是第五局的时候
            //例如2:2
            else if (document.getElementById('ZongChinaA').value == 2 && document.getElementById('ZongB').value == 2)
            {
                if (document.getElementById('JuB').value < 15)
                {
                    document.getElementById('sai1').value++;
                    document.getElementById('JuB').value++;
                }
                else
                {
                    document.write(比赛结束);
                }
            }

            //4.不符合以上几种情况时  
            else {
                document.write(程序运行错误);
            }

        }

        function jia1()//得分-1分
        {
            document.getElementById('sai1').value--;
            document.getElementById('JuB').value--;
        }

    </script>

程序运行截图:

   1.当比赛中的其中一支队伍的队员率先得到全场的第1分时,可以看到不仅该队员的个人得分+1,而且该队员所在的队伍的本局局比分也随着+1,由于分数没有达到局点,所以总比分和第一局比分的状态值并没有发生改变。

   2.当中国队拿到第一局的局点时

      局点前:

     局点后:

   3.两种获得此次比赛胜利的方式:

      3.1以总比分3:2的方式获胜:

       3.2大比分的方式获胜:

 后续还要做很多工作,就不再这里一一阐述了。

转载于:https://www.cnblogs.com/shangguanlei/p/7058099.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值