扑克牌发牌程序---计应192(西)—第六组—刘明辉

规则:

扑克牌发牌程序,四名选手打牌,电脑随机将五十二张牌(不含大小王)发给四名打牌者,在屏幕上显示每位牌手的牌。

分析:

将五十二张扑克牌按顺序0-51编号,其中梅花A-K 编号是0-12,黑桃A-K编号是13-25,方块A-K编号是26-38,红桃A-K编号是39-51,例如,黑桃2编号14,方块三编号是28.最初按序存入数组a中,洗牌过程中就是随机任意交换两个元素。输出牌手的牌是根据扑克牌编号n推算出排名。

Using System;

Namespace  P2_19

{

Class  Program

{

Static   void   Main (string []args){

  int m, n, t, i;

            int[] a = new int[52];

            Random r = new Random();

            for (i = 0; i < 52; i++)

                a[i] = i;

            for (i = 1; i <= 100; i++)

            {

                m = r.Next() % 52;

                n = r.Next() % 52;

                t = a[m]; a[m] = a[n]; a[n] = t;

 

            }

            for (m = 0; m <= 3; m++)

            {

 

                shuchupaishou(m, a);

 

            }

            Console.Read();

        }

 

 

        static void pai(int n)

        {

            if (n < 13)

                Console.Write("¡¤{0}", n + 1);

            else if (13 <=n && n < 26)

                Console.Write("¨²{0}", n - 12);

            else if (n < 39)

                Console.Write("¤?{0}", n - 25);

            else if (n < 52)

                Console.Write("¨¬{0}", n - 38);

        }

        static void shuchupaishou(int m, int[] a)

        {

            Console.WriteLine("{0}??º?êo", m + 1);

            for (int i = 0; i <52; i++)

            {

                if (i % 4 == m)

                {

                    pai(a[i]);

                    Console.Write("");

                }

            }

            Console.WriteLine();

 

}

}

}

PSP 各个阶段

 预估时间

(分钟)

实际记录

(分钟)

计划:明确需求和其他因素,估计以下的各个任务需要多少时间 

 

 

开发(包括下面8项子任务)

 

 

. 需求分析(包括学习新技术、新工具的时间)

60

 80

. 生成设计文档(整体框架的设计,各模块的接口,用时序图,快速原型等方法)

 25

 35

. 设计复审 (和同事审核设计文档,或者自己复审)

 10

 18

.代码规范(为目前的开发制定或选择合适的规范)

 15

 22

.具体设计(用伪代码,流程图等方法来设计具体模块)

 25

 35

.具体编码

 30

 40

.代码复审

 10

 15

.测试(自我测试,修改代码,提交修改)

 8

 15

总共花费的时间(分钟)

 208

 260
posted @ 2021-04-11 14:21  计应192西六组  阅读(1224)  评论(0编辑  收藏  举报