首页 > 代码库 > 结对项目-四则运算

结对项目-四则运算

项目:四则运算

结对伙伴:杜桥

功能:四则运算随机出题,并判断答案是否正确(只实现了正整数运算);

实现:用c#实现,用random.Next()完成随机部分,然后通过判断来检查答案是否正确;

Https:https://git.coding.net/li_yuhuan/CalculateTest.git

SSH:git@git.coding.net:li_yuhuan/CalculateTest.git

代码:

            int v1;            int v2;            int a;            char op;            char[] ops = new char[]{ +, -, *, /,/};
for (int i = 0; i < 10; i++)            {                v1 = ran.Next(1, 20);                v2 = ran.Next(1, 20);                op = ops[ran.Next(3)+ ran.Next(3)];

通过循环结构多次出题,用random.next方法生成随机数。

实现过程中发现random.next(3)循环1000次,都没有出现过3,先后试了网上的几种方法,都未能解决.最后通过两个随机数相加实现了0-4的随机数,当前虽然四种符号都会随机出现,但是概率不等.目前未解决;

 

 

                if (op == /)                {                    while (v1 < v2)                    {                        v2 = ran.Next(1, v1);                    }                    int mod = v1 % v2;                    if (mod != 0)                    {                        v1 += mod;                    }                }

如果是除法,则要求被除数比除数大,如果随机生成的数不能整除,则把余数加给被除数实现整除;

 

 

                else if (- == op)                {                    while (v1 < v2)                    {                        v2 = ran.Next(1, v1);                    }                }

如果是减法,则要求被减数比减数大;

 

 

                switch (op)                {                    case +:                        {                            a = v1 + v2;                            break;                        }                    case -:                        {                            a = v1 - v2;                            break;                        }                    case *:                        {                            a = v1 * v2;                            break;                        }                    case /:                        {                            a = v1 / v2;                            break;                        }                    default:                        {                            a = 1;                            break;                        }                }

分情况计算并记录结果;

 

 

                Console.WriteLine(i +1 + "" + v1 + op.ToString() + v2 + "=");                Console.WriteLine("请输入答案:");                string result = Console.ReadLine();

输出算式,并提示输入答案,读取所输入的数字;

 

 

                while (!IsNumeric(result))                {                    Console.WriteLine("输入有误,请输入整数");                    result = Console.ReadLine();                }                if (int.Parse(result) == a)                {                    Console.WriteLine("回答正确");                }                else                {                    Console.WriteLine("回答错误,正确答案是:" + a);                }

检测输入的文本是否为整数,不是则提示重新输入;

如果是整数则判断答案是否正确,并给出结果;

 

 

运行样例:

技术分享

技术分享

 

结对项目-四则运算