四则运算生成器(基于控制台)

一、需求分析

1、通过参数控制生成题目的个数;

2、通过参数控制生成该题目的数值的最大值;

3、题目运行一次生成的题目不能重复,生成的题目存到项目目录里的Exercise.txt中;

5、计算题目答案存在项目目录下的Answer.txt中;

6、程序支持10000道题目生成;

统计结果输出到文件Grade.txt,格式如下:

Correct: 5 (1, 3, 5, 7, 9)

Wrong: 5 (2, 4, 6, 8, 10)

Repeat:2

RepeatDetail:

(1)   2,45+32  Repeat 3,32+45

(2)   5,3+(2+1)  Repeat 7,1+2+3

解释:

Correct: 5 ----5道题目正确,正确的题号 1,3,5,7,9

Wrong:5 -----5道题目错误,错误的题号 2,4,6,8,10

Repeat:2   2---组题目重复

(1) 第一组 题号2,题目 45+32  与题号3的题目重复,题号3为 32+45

(2)第二组  题号5,题目 3+(2+1) 与题号7的题目重复,题号7为 1+2+3

二、功能实现


1、运算式的生成:1)通过用户输入来控制生成式子个数和进行运算的数值最大值来生成随机个数的随机运算符;

          2)根据生成的运算符个数来确定所需的操作数个数并生成随机的操作数;

          3)将生成的运算符和操作数进行随机的组合并在组合后生成的操作数中随机加入括号;

2、运算式的计算:通过逆波兰式把中序表达式转为右序表达式最后通过栈来计算

3、对表达式查重:暂时的思路是通过对比运算式的有序表达式是否相同

三、代码实现

https://git.coding.net/hzp2018/task1.git

四、功能演示

1、生成10000道运算式

2、对运算式进行计算(没有将小数替换成分数)

五、PSP表格

PSP2.1 Personal Software Process Stages Time Senior Student Time  
Planning 计划 10 6  
· Estimate 估计这个任务需要多少时间 10 6  
Development 开发 635 88  
· Analysis 需求分析 (包括学习新技术) 10 10  
· Design Spec 生成设计文档 15 20  
· Design Review 设计复审 10 10  
· Coding Standard 代码规范 30 50  
· Design 具体设计 30 40  
· Coding 具体编码 480 800  
· Code Review 代码复审 20 20  
· Test 测试(自我测试,修改代码,提交修改) 40 30  
Reporting 报告 60 90  
· 测试报告 30 60  
· 计算工作量 5 10  
· 并提出过程改进计划 25 20  

六、总结 


一开始因为对编译原理的掌握不是很好所以逆波兰式并不是很熟悉,所以花费了大量的时间先研究逆波兰式,然后用的又是自己不熟悉的C语言进行编码,对文件的操作也不熟悉,在文件读写也踩了非常多的坑,查重的功能还没来得及实现

时间: 2024-08-29 06:37:54

四则运算生成器(基于控制台)的相关文章

四则运算(基于控制台)

一.题目描述: 1. 使用 -n 参数控制生成题目的个数,例如 Myapp.exe -n 10 -o Exercise.txt 将生成10个题目. 2. 使用 -r 参数控制题目中数值(自然数.真分数和真分数分母)的范围,例如 Myapp.exe -r 10 将生成10以内(不包括10)的四则运算题目.该参数可以设置为1或其他自然数.该参数必须给定,否则程序报错并给出帮助信息. 3. 生成的题目中如果存在形如e1 ÷ e2的子表达式,那么其结果应是真分数. 4. 每道题目中出现的运算符个数不超过

个人作业1——四则运算题目生成程序(基于控制台)

No.1 四则运算题目生成程序(基于控制台) 程序代码 需求分析: 能够根据用户自身对题目数量的需求自动生成一定数量的包含分数的四则运算题目的命令行程序. 功能设计: 除了整数以外,还要支持真分数的四则运算,真分数的运算 并且要求能处理用户的输入,并判断对错,打分统计正确率 要求能处理用户输入的真分数 使用 -n 参数控制生成题目的个数 设计实现: 程序是用c++实现的,主要有四个函数,主函数随机生成整数或者分数算法,divisor(int i, int j)计算最大公约数,zs为计算整数算法,

基于控制台的四则运算

一.题目要求:完成一个基于控制台的四则运算程序,实现一个自动生成小学四则运算题目的命令行程序 满足以下需求: 1.除了整数以外,还要支持真分数的四则运算,真分数的运算,例如:1/6 + 1/8 = 7/24 2.运算符为 +, ?, ×, ÷ 3.并且要求能处理用户的输入,并判断对错,打分统计正确率. 4.要求能处理用户输入的真分数, 如 1/2, 5/12 等 5.使用 -n 参数控制生成题目的个数,例如执行下面命令将生成10个题目 Myapp.exe -n 10 二.需求分析 能够自动生成四

四则运算练习器(基于控制台)

题目链接:http://www.cnblogs.com/HQL0301/p/7502315.htm 源码连接:https://gitee.com/a1234321/four_operations/tree/master 一.需求分析 ?可以根据输入的题数和数值范围自动生成四则运算表达式. ?表达式包括"+ - * /"这四种运算符. ?可以进行分数的运算,如果题目中出现假分数,则转换成真分数. ?对题目答案进行批改对错,给出正确率. 二.功能设计 (1)基本功能 1.输入参数n,程序生

结对-四则运算生成器-设计文档

项目名称: 四则运算生成器 成员: 李明,姜广昱 开发环境: Android stdio 功能: 生成四则运算题目模块:可随机生成包括小数.整数的四则运算. 四则运算难度调整模块:可调整四则运算难度包括题目数量.是否有小数.小数位数.整数位数. 答题模块:用户可对生成的题目进行作答. 答题结果及分析模块:生成题目答案,对照答题答案给出错误题目回顾,和答题成绩. 说明: 为实现上述功能,本软件分为答题和出题两大模块,出题时可调整难度,答题部分要显示分数和答错部分的正确答案

基于控制台实现贪吃蛇游戏

1).引言 学习编程,我个人觉得最好的办法就是根据自己的水平不断的给自己设定一个小目标.而这个小目标就是一个有意思的项目,通过完成这个项目,对自己的成果(也包括失败的)进行分析总结,从中提炼出对应的技术并分享出来,不断的往复,如此,为的就是让我们永远保持编写程序的兴趣和热情,完了,还提高我们的技术.而本文就是总结自己的一个小目标(基于控制台实现的贪吃蛇游戏而写的总结) 2).技术实现 大家小时候一定玩过贪吃蛇的游戏.贪吃蛇游戏的控制过程其实也不复杂.简单的可以概括为以下4个部分. 1.1  .组

四则运算生成器升级版1.0代码规范与测试程序

一.程序设计题目要求和设计思想 1.题目 (1).题目避免重复:    (2).可定制(数量/打印方式):    (3).可以控制下列参数: 是否有乘除法.是否有括号. 数值范围.加减有无负数.除法有无余数.否支持分数 (真分数, 假分数, …).是否支持小数 (精确到多少位).打印中每行的间隔可调整: 2.设计思想 要求1:题目避免重复    设计思想:(1)通过srand(time(NULL));来控制.    要求2:可以定制(数量/打印方式)    设计思想:(1)定义一个参数,利用用户

四则运算生成器升级版2.0

一.题目要求 每个同学对已有的四则运算生成器进行优化,我选择的题目是:让程序能接受用户输入答案,并判断对错,最后给出总共对/错的数量. 二.设计思想 首先考虑用c#编写程序,找到一个能输出运算题目.能接收用户输入的还能反馈给用户做的对与错的控件,最后考虑选择的是datagridview控件,而且用了之后效果还是不错的,但是不进行数据库的链接,就是简单的实现这个控件的单元格的内容输入输出. 三.程序源代码 1 using System; 2 using System.Collections.Gen

四则运算生成器-个人项目1

第一个个人项目四则运算生成器参考源代码:https://zhidao.baidu.com/question/532330836.html?qbl=relate_question_0&word=%D3%C3C%D3%EF%D1%D4%CA%B5%CF%D6%CB%C4%D4%F2%D4%CB%CB%E3%C9%FA%B3%C9%C6%F7 改了一点点功能,运行有错误,也改过来了. #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #in

四则运算生成器说明

四则运算生成器使用说明书 一.主界面 首先打开本软件时,可以看到软件的主界面即软件主要功能选择界面,分为输出随机生成整数四则运算.输出随机生成真分数的四则运算.在线答题-整数四则运算.在线答题-真分数的四则运算和错题本以及退出系统功能.在下方输入框内输入对应的功能数字代号即可进入对应的功能界面. 二.主要功能介绍 本运算生成器主要分为2个大模块:输出随机四则运算模块.在线答题模块.其中,输出随机四则运算主要用来同时随机出若干题目,可以用来给孩子做练习题.又分整数和分数四则运算,可以满足不同年级学