需求分析
- 不能有重复的题目
- 命令程序接受一个数字输入,然后输出相应数目的四则运算题目和答案,生成的题目和答案分别存入。
- 运算式子必须至少要有两三个运算符,随机出现运算符、题目。
- 答案不能为负数
功能设计
1.根据用户输入的数字自动产生相应数目的四则运算式;
2.程序所产生的符合和数字均为随机数字。
设计思路:让用户输入要练习的题目数量,然后随机产生随机数和随机运算符并产生运算式
部分编码
public class Class1
{
#region 生成数与符号
//随机整数
public static string integer(int scope)
{
Random random = new Random(Guid.NewGuid().GetHashCode());
return random.Next(0, scope).ToString();
}
//随机小数
public static string decimals(int scope)
{
Random random = new Random();
return random.Next(0, scope).ToString() + "." + random.Next(1, 10);
}
//随机分数
public static string grade(int scope)
{
Random random = new Random();
return random.Next(1, scope).ToString() + "/" + random.Next(1, 10);
}
//随机运算符
public static string operators()
{
Random random = new Random(Guid.NewGuid().GetHashCode());
switch (random.Next(1, 5))
{
case 1:
return "+";
case 2:
return "-";
case 3:
return "×";
case 4:
return "÷";
}
return "";
}
//括号
public static void bracket()
{
}
#endregion
}
项目结果
总结项目优缺点
这项目的实现和设计的差异性可能只有深入了解和思考才会去理解项目不同于理论学习最大的特征在于测试的完全性和程序本身的鲁棒性,自己在初期设计的时候没有梳理清楚表达式的生成规则和基础的类的设计,所以后续还需要继续完善。
项目的改进计划
希望后面能多加熟悉运用,熟能生巧,考虑更多的方面。
个人收获
促进团队里队员之间的互动性,了解自己队员的想法,不懂的可以求助自己的队员等。