码迷,mamicode.com
首页 > 其他好文 > 详细

四则运算

时间:2017-09-24 12:55:09      阅读:208      评论:0      收藏:0      [点我收藏+]

标签:net   c语言   提高   设计   目标   技术   evel   控制台   view   

a.需求分析

看了大家对于本课程的目标和规划,很多同学都希望能提高自己的实践能力,没有捷径可走,就是练习、练习再练习!那么就从第一个个人项目开始吧,用一周的时间完成一个基于控制台的四则运算程序,实现一个自动生成小学四则运算题目的命令行程序

从《构建之法》第一章的 “程序” 例子出发,像阿超那样,花二十分钟写一个能自动生成小学四则运算题目的命令行 “软件”,满足以下需求:

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


b.功能设计

  • 基本功能 :生成表达式,运算结果,检验答案

c.设计实现

  1.生成表达式

    以w+的方式打开文件,覆盖原来的数据

    首先把一个数分成整数,分子,分母三部分创建三个数组zhengshu[],fenzi[],分母[];

    将四个符号放在一个数组里面{‘+’,‘ ?’,‘ 3’,‘ 4’}后面的三四分别代表 ×和 ÷,因为我是用C语言写的,而×, ÷都是占两个字符;

    在只有三个操作数的情况下,括号一般为三种情况分别是:无括号,前两个数括号起来,后两个数括号起来。

    

  2.运算结果

    以w+的方式打开文件,覆盖原来的数据;

    根据括号类型和符号类型,将计算的结果都放进fenzi[],fenmu[]中;

    对fenzi[],fenmu[]进行约分,以1‘3/1,2形式存入文件

  3.检验结果

    由于前面的答案以字符串形式存入文件,所以直接读取字符串和文件中的字符串比较

d.代码说明

  1.主函数

 

技术分享

  2.创建表达式

 

 技术分享

  3.进行约分

 

技术分享

  4.判断结果

 

 技术分享

 

e.测试运行

 技术分享

技术分享

技术分享

 

 技术分享

 

f. psp

PSP2.1Personal Software Process StagesTime Senior StudentTime
Planning 计划 20 20
Estimate 估计这个任务需要多少时间 5 5
Development 开发 4000 4000
Analysis 需求分析 (包括学习新技术) 20 10
Design Spec 生成设计文档 50 10
Design Review 设计复审 2 1
Coding Standard 代码规范 1 1
Design 具体设计 20 30
Coding 具体编码 4500 4700
Code Review 代码复审 10 8
Test 测试(自我测试,修改代码,提交修改) 50 120
Reporting 报告 60 120
  测试报告 24 45
  计算工作量 3 5
  并提出过程改进计划 8 10

代码仓库地址:https://coding.net/u/jiangzeping/p/expression/git

四则运算

标签:net   c语言   提高   设计   目标   技术   evel   控制台   view   

原文地址:http://www.cnblogs.com/jiangzeping/p/7586715.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!