首页 > 技术文章 > 计应191西第七组杨佳贺

yangjiahe 2021-05-31 20:44 原文

一、计划做一个小学生一年级口算题卡软件,大概半小时左右完成。

二、开发

  1. 需求分析:作为一名一年级小学生的家长,我希望开发出一个口算题卡软件,让我的孩子能在上面练习口算题,能够自动生成一百以内正整数的加减法运算,以便减轻负担。
  2. 难点:自动出题、剔除掉减法结果中为负数的情况。
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
开发 20 40
需求分析 (包括学习新技术) 20 5
· 生成设计文档 15 3
· 设计复审 (和同事审核设计文档) 20 2
代码规范 (为目前的开发制定合适的规范) 10 1
具体设计 20 5
具体编码 40 20
· 代码复审 5 2
· 测试(自我测试,修改代码,提交修改) 15 2
报告 20 20
· 测试报告 5 5
计算工作量 5 5
· 事后总结 ,并提出过程改进计划 10 10

 

总结:在这次的个人项目开发中,完成了项目基本的需求,在与开发过程中和组员并有着积极的交流。

但有些地方还是很生疏,需要勤加练习。

 

推荐阅读