更高要求的程序

一、程序要求

1、题目避免重复;

2、可定制(数量/打印方式);

3、可控制下列参数:

是否有乘除法;

是否有括号(最多可以支持十个数参与计算);

数值范围;

加减有无负数;

除法有无余数;

二、程序设计思想

1、在上次程序的基础之上添加要求;

2、使用时间做种子产生随机数,每次运行题目不重复;

3、在程序中输入题目数量,可随意更改;

4、添加参数,控制是否有乘除法,可任意选择;

5、添加参数,控制数值范围,可任意选择;

6、添加参数,控制减法有无负数,可任意选择;

7、添加参数,控制除法有无余数,可任意选择;

三、源程序

//李俏,2016.3.7
//随机生成四则运算

#include<iostream>
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
using namespace std;int main()
{int first,second,firstm,secondm;int sign,i,j;int num,chengchu,fushu,yushu,fanwei;cout<<"请输入题目数量:";cin>>num;if(num==0){exit(1);}cout<<"是否有乘除法?1.是,2.否:";cin>>chengchu;if(chengchu==1){cout<<"除法是否有余数?1.是,2.否:";cin>>yushu;}cout<<"减法是否有负数?1.是,2.否:";cin>>fushu;cout<<"请输入数值范围:";cin>>fanwei;srand((int)time(NULL)); //用时间做种子,每次产生随机数都不一样for(i=0;i<num;i++){j=rand()%2;        //选择生成整数运算还是分数运算if(j==0)           //选择整数
        {first=rand()%(fanwei+1);second=rand()%(fanwei+1);if(chengchu==1){sign=rand()%4; }else{sign=rand()%2;}switch(sign){case 0:                      //整数加法cout<<first<<"+"<<second<<"="<<endl;break;case 1:                      //整数减法if(fushu==1){cout<<first<<"-"<<second<<"="<<endl;}else{if(first>second){cout<<first<<"-"<<second<<"="<<endl;}else{cout<<second<<"-"<<first<<"="<<endl;}}break;case 2:                   //整数乘法cout<<first<<"*"<<second<<"="<<endl;break; case 3:                   //整数除法if(yushu==1){if(second!=0){cout<<first<<"/"<<second<<"="<<endl;}else{i=i-1;}}else{if(second!=0&&(first%second==0)){cout<<first<<"/"<<second<<"="<<endl;}else{i=i-1;}}break;}}else              //选择分数
        {first=rand()%(fanwei+1);                        second=rand()%(fanwei+1);//分子firstm=rand()%(fanwei+1);secondm=rand()%(fanwei+1);//分母if(chengchu==1){sign=rand()%4;}else{sign=rand()%2;}switch(sign){case 0:                //分数加法if(firstm!=0&&secondm!=0&&first<firstm&&second<secondm){cout<<first<<"/"<<firstm<<"  +  "<<second<<"/"<<secondm<<"="<<endl;}else{i=i-1;}break;case 1:                //分数减法if(fushu==1){if(firstm!=0&&secondm!=0&&first<firstm&&second<secondm){cout<<first<<"/"<<firstm<<"  -  "<<second<<"/"<<secondm<<"="<<endl;}else{i=i-1;}}else{if(firstm!=0&&secondm!=0&&first<firstm&&second<secondm&&(first/firstm)>(second/secondm)){cout<<first<<"/"<<firstm<<"  -  "<<second<<"/"<<secondm<<"="<<endl;}else{i=i-1;}}break;case 2:                //分数乘法if(firstm!=0&&secondm!=0&&first<firstm&&second<secondm){cout<<first<<"/"<<firstm<<"  *  "<<second<<"/"<<secondm<<"="<<endl;}else{i=i-1;}break;case 3:                //分数除法if(firstm!=0&&secondm!=0&&first!=0&&second!=0&&first<firstm&&second<secondm){cout<<first<<"/"<<firstm<<"  /  "<<second<<"/"<<secondm<<"="<<endl;}else{i=i-1;}break;}}}

    return 0;
}   

四、结果截图

五、项目计划日志

周活动总结表

姓名:李俏           日期:2016年3月12日

日期   任务 听课  编写程序 阅读课本 准备考试     日总计

周一

120 60 30       210

周二

    30       30

周三

    30       30

周四

120 60 30       210

周五

    30       30

周六

  180  30       210

周总结

240 300

180

      720

阶段时间和效率                            周数:1

不包括上一周在内的累计时间

总计

240

300

180

720

平均

240

300

180

720

最大

240

300

180

720

最小

240

300

180

720

以前各周的累计时间

总计

平均

最大

最小

六、时间记录表:

学生:       李 俏                              日期 :2016年3月12日

教师:      王建民                              课程 :软件工程

日期

开始时间

结束时间

中断时间

净时间

活动

备注

3.7

16:30

17:30

60

编写程序

作业

20:00

20:30

30

阅读

作业

3.8

20:10

20:40

30

阅读

作业

3.9

20:00

20:40

10min

30

wc

3.10

18:50

19:50

60

编写程序

作业

20:00

20:30

30

阅读

作业

3.11

21:10

21:40

30

阅读

作业

3.12

11:00

14:30

30min

180

编写程序

作业

七、缺陷记录日志:

学生        李俏

日期     2016年3月12日

教员          王建民

程序号

日期

编号

类型

引入阶段

排除阶段

修复时间

修复缺陷

3.7

1

20

编码

编译

5min

描述:初次添加参数控制,控制语句放置错误

3.10

2

20

编码

编译

10min

描述:if...else...语句没有加大括号,导致层次不分明

3.12

3

40

运行

运行后

10min

描述:错删break,题目数目不对

3.15

4

A

编译

编译

1min

描述:条件不成立时, 写成i=i+1,应该是i=i-i

转载于:https://www.cnblogs.com/Aliqiao/p/5266299.html

个人项目——二柱子程序升级版相关推荐

  1. RIGHT-BICEP单元测试——“二柱子四则运算升级版”

    RIGHT-BICEP单元测试 --"二柱子四则运算升级版" "单元测试"这对于我们来说是一个全新的专业含义,在上了软件工程这门课,并当堂编写了简单的" ...

  2. 个人项目——二柱子的生成小学生四则运算题程序

    二柱子的生成小学生四则运算题程序 一.程序要求 1.自动生成30道小学生四则运算题 2.除了整数外,还要可以生成真分数的四则运算 二.程序设计思想 程序分两个部分:整数部分和分数部分 1.定义变量:第 ...

  3. 结对项目——二柱子再更新版

    更高更高要求的四则运算 一.程序要求 1.学生写的程序必须能够判定用户的输入答案是否正确: 2.程序必须能处理四种运算的混合算式: 3.在上次程序的基础上,添加新的功能: 二.程序设计思想 1.在上次 ...

  4. 项目总监批评程序员穿大裤衩上班情商低!程序员一气之下要离职!项目已到一半了,总监着急发帖求助!...

    项目总监批评程序员穿大裤衩上班太随意,程序员反驳说是成都下暴雨了,总监恼羞成怒指责程序员情商太低,结果人家要离职!总监懵逼了,项目到一半了,这可咋整呢? 程序员友军纷纷出来打卡,站队程序员,说是大裤衩 ...

  5. 表决器c语言课程设计,项目二:玩转RGB点阵屏——表情表决器

    项目二:玩转RGB点阵屏--表情表决器项目二:玩转RGB点阵屏--表情表决器(建议2课时) [情境导入] 图2.1 医护人员"逆行"湖北 是她们不畏生死驰援湖北,为中国抗疫带来胜利 ...

  6. python项目二:多种验证码及二维码输出

    python项目二:多种验证码及二维码输出 ` import os import qrcode import random import time import tkinter from pystri ...

  7. java小项目家庭记账程序

    文章目录 java小项目家庭记账程序 **1.项目目标:** 2.项目需求: 3.具体思路: 4.具体代码: 1.页面: 2.Option_1类: 3.Option_2类: 4.Option_3类: ...

  8. idea 启动SpringBoot项目出现java程序包:xxx不存在

    启动SpringBoot项目出现java程序包:xxx不存在,然而这个包确实存在 方法一:使用Maven构建项目,构建过程比较慢 指定位置打上对勾,即可 2.方法二:清除idea缓存,重新构建索引,此 ...

  9. 信创操作系统--麒麟Kylin桌面版 (项目二 桌面环境)

    信创操作系统–麒麟Kylin桌面版 (项目二 桌面环境) 目录 桌面布局 新建文件夹/文档 设置排序方式 调整图标 设置显示器 壁纸与屏保 剪贴板 任务栏 回收站 开始菜单 开始菜单模式 应用管理 窗 ...

最新文章

  1. 你想要的宏基因组-微生物组知识全在这(190101)
  2. python编程 语言-Python——最美丽的编程语言
  3. pcl中set程序_PCL中分割方法的介绍(3)
  4. hadoop Idea Win本地运行
  5. 卸载python的正确姿势
  6. java五层架构_Web五层架构
  7. 送给年轻人创业的经典好文章
  8. php7.4报错:Trying to access array offset on value of type null
  9. 赋值运算符、逻辑运算符、表达式
  10. 计算机二级c语言编程题库100题下载,计算机二级C语言编程题库100题.doc
  11. 最新毕业设计参考文献大全
  12. 腾达路由器怎么设置网站服务服务器,腾达(Tenda)-无线路由器如何设置上网?
  13. 【论文笔记】知识图谱推理PRA——Relational retrieval using a combination of path-constrained random walks
  14. 机器学习入门-西瓜书总结笔记第十六章
  15. AWS KVS(Kinesis Video Streams)之WebRTC集成过程报错问题整理(七)
  16. 18.3.7给小可爱们的(NBUOJ)
  17. vue+cesium汉化包
  18. 续.第一次冲刺之后.
  19. 傻瓜式IOS发布教程(一)iTunes Connect创建应用以及内购
  20. 烤仔创作者联盟 | 咱就是说,我们社区的DAO组织发展历程

热门文章

  1. 主流RGB灯,灯带通用C语言程序
  2. 计算机文件右击怎么显示打开方式,电脑右键菜单中没有打开方式怎么办|电脑恢复打开方式选项到右键菜单中的方法...
  3. 直方图均衡化背后的数学
  4. click和touchmove vue_移动端touch事件影响click事件以及在touchmove添加preventDefault导致页面无法滚动的解决方法...
  5. Mathematica实例——利用Mathematica演示量子力学中的波包演化
  6. Reducing Fractions
  7. 商务谈判中如何表示同意Agreement
  8. 云开发mbti人格类型测试助手微信小程序源码
  9. idea 项目能运行,但是代码冒红-解决措施
  10. 穆利堂(推荐)WxOA房地产协同办公整体解决方案-河南郑州房地产OA协同办公系统软件 穆穆-movno1