• 软件工程(2018)结对第2次作业


    小学四则运算题目自动生成器

    一、题目

    要求:

    • 能够自动生成四则运算练习题
    • 可以定制题目数量
    • 用户可以选择运算符
    • 用户设置最大数(如十以内、百以内等)
    • 用户选择是否有括号、是否有小数
    • 用户选择输出方式(如输出到文件、打印机等)
    • 最好能提供图形用户界面(不会)
      二、源代码

    这次我负责驾驶员的工作,刘鹏飞负责领航员的工作。
    代码已传至coding-net
    ···

    include

    include<stdio.h>

    include<stdlib.h>

    include<string.h>

    include<time.h>

    using namespace std;

    char Operator()
    {
    char op;
    int i;
    i=rand()%4+1;
    switch(i)
    {
    case 1: return '+';
    case 2: return '-';
    case 3: return 'x';
    case 4: return '/';
    }
    }

    void integer()
    {
    int x,y;
    char op;
    x=rand()%100+1;
    y=rand()%100+1;
    op=Operator();
    if(op=='-')
    while(x<y)
    {
    x=rand()%100+1;
    y=rand()%100+1;
    }
    cout<<x<<op<<y<<"="<<endl;
    }

    void fraction()
    {
    int a,b,c,d;
    a=rand()%100+1;
    b=rand()%100+1;
    c=rand()%100+1;
    d=rand()%100+1;
    char op;
    while(a<=b||c<=d)
    {
    a=rand()%100+1;
    b=rand()%100+1;
    c=rand()%100+1;
    d=rand()%100+1;
    }
    op=Operator();
    if(op=='-')
    while((bc-ad)<0)
    {
    a=rand()%100+1;
    b=rand()%100+1;
    c=rand()%100+1;
    d=rand()%100+1;
    }
    cout<<b<<"/"<<a<<op<<d<<"/"<<c<<"="<<endl;
    }

    int main()
    {
    srand(time(0));
    int i,n,m;
    cout<<"Welcome!"<<endl;
    cout<< "请输入出题类型"<<endl;
    cout<< "1.整数四则运算"<<endl;
    cout<< "2.分数四则运算"<<endl;
    cin>>i;
    cout<< "请输入出题数目"<<endl;
    cin>>n;
    for(m=1;m<=n;m++)
    {
    if(i==1)
    integer();
    else
    fraction();
    }
    }
    ···
    结果图附上:

    三、总结

    这次作业,明显觉得自己能力上非常之不足,也没有完全地完成题目要求,这一点确实是尽力了,在我们项目的开发过程中我们项目的步骤:详细设计、详细设计,编码,单元测试。在项目开发过程中我也深刻的体会到详细设计对一个项目开发有明确的指引作用,它可以使开发人员对这个项目所要实现的功能在总体上有具体的认识,并能减少在开发过程中出现不必要的脱节。这次实训也让我深刻的了解到,不管在工作中还是在生活中要和老师、同学保持良好的关系是很重要的。做事首先要先做人,要明白做人的道理,如何与人相处是现代社会的做认得一个最基本的问题,对已自己这样一个即将步入社会的人来说,需要学习的东西很多。

  • 相关阅读:
    Socket编程实践(6) --TCPNotes服务器
    2014百度之星预赛(第二场)——Best Financing
    操作和维护经常使用的命令
    HDU 5073 Galaxy(Anshan 2014)(数学推导,贪婪)
    [Angular2] @Ngrx/store and @Ngrx/effects learning note
    [AngularJS Ng-redux] Integrate ngRedux
    [AngularFire2] Update multi collections at the same time with FirebaseRef
    [AngularJS] Write a simple Redux store in AngularJS app
    [AngularJS] Using an AngularJS directive to hide the keyboard on submit
    [Javascript] Validate Data with the Every() Method
  • 原文地址:https://www.cnblogs.com/wang-yalong/p/8849953.html
Copyright © 2020-2023  润新知