计应191第5组尹旭东
一、计划做一个小学生一年级口算题卡软件,大概半小时左右完成。
二、开发
- 需求分析:作为一名一年级小学生的家长,我希望开发出一个口算题卡软件,让我的孩子能在上面练习口算题,能够自动生成一百以内正整数的加减法运算,以便减轻负担。
- 难点:自动出题、剔除掉减法结果中为负数的情况
-
using System;using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleAppMath{
class Program
{
static void Main(string[] args)
{
int count = 1;//记录答题数量
int error = 0;//记录答题错误数量
do
{
Random r = new Random();
int a = r.Next(0, 101);//定义一个初始数0到100,包含100
int b = r.Next(1, 3);//定义一个标识,若为1,则计算加法,否则,计算减法
if (b == 1) {
int c = r.Next(0, 100 - a);//定义一个和初始数相加小于100的随即数
Console.WriteLine("第{0}题:{1} + {2} = ? ", count, a, c);
try
{
int result = Convert.ToInt32(Console.ReadLine());//获取输入结果
if (result == a + c)
{
Console.WriteLine("恭喜你,回答正确!");
}
else
{
error++;
Console.WriteLine("回答错误,正确答案应该是:{0}", a + c);
}
}
catch (Exception)
{
//若输入非数字,则该题作废,不计入总的答题数量
Console.WriteLine("你输入的不是数字,此题作废!");
continue;
}
} else
{
int c = r.Next(0, a);
Console.WriteLine("第{0}题:{1} - {2} = ? ", count, a, c);
try
{
int result = Convert.ToInt32(Console.ReadLine());
if (result == a - c)
{
Console.WriteLine("恭喜你,回答正确!");
}
else
{
error++;
Console.WriteLine("回答错误,正确答案应该是:{0}", a - c);
}
}
catch (Exception)
{
Console.WriteLine("你输入的不是数字,此题作废!");
continue;
}
}
Console.WriteLine("按任意键开始下一道,输入 'e'结束!");
count++;
} while (Console.ReadLine() != "e");
int zhengque = count - 1 - error;//计算共答对多少题
int s = Convert.ToInt32((zhengque * 100) / (count - 1));//按照比例计算分数100分为满分
Console.WriteLine("答题结束,你一共做了{0}道题,正确{1}道,错误{2}道,得分:{3}", count - 1, count - 1 - error, error, s);
Console.ReadLine();
}
}
}任务内容 计划共完成需要的时间(min) 实际完成需要的时间(min) 计划 30 60 开发 50 50 需求分析 (包括学习新技术) 30 30 · 生成设计文档 30 30 · 设计复审 (和同事审核设计文档) 30 30 代码规范 (为目前的开发制定合适的规范) 10 20 具体设计 20 30 具体编码 40 45 · 代码复审 30 30 · 测试(自我测试,修改代码,提交修改) 30 30 报告 30 30 · 测试报告 25 30 计算工作量 60 30 · 事后总结 ,并提出过程改进计划 10 10 4、总结:在这次的个人项目开发中,完成了项目基本的需求,但各方面都较为生疏,需要在同学帮助下完成,还需要多加练习