zoukankan      html  css  js  c++  java
  • 软件工程个人作业01

    题目:代码实现随机生成30道四组运算。

    • 设计思想:

    1、随机数的生成。

         ①找到随机数函数(rand)。

         ②控制随机数产生的范围(0-99)。

         ③输出随机数。

    2、运算符的生成。

         ①用产生的随机数除以4,分别得到余数为0、1、2、3,从而确定运算符号(+、-、*、/)。

         ②输出运算符。

    3、真分数。

         随机生成分子小于分母。

    4、混合输出。

         再使用随机数产生1和2来决定整数和真分数。

    • 源程序代码
    #include<iostream>
    #include<time.h>
    using namespace std;
    void main()
    {
        int num,num1, num2,num3,num4, fuhao, i,a=0,b=0,c=0,d=0,t;
        srand((int)time(NULL));
        for (i = 0; i < 30; i++)
        {
            num1 = 1 + rand() % 100;//将1到100内的数随机赋予num1,用于整数计算
            num2 = 1 + rand() % 100;//将1到100内的数随机赋予num2,用于整数计算
            num3 = 1 + rand() % 100;//将1到100内的数随机赋予num3,用于分数计算
            num4 = 1 + rand() % 100;//将1到100内的数随机赋予num4,用于分数计算
            num = 1 + rand() % 2;//随机生成1或2分别表示整数和分数
            if (num == 1)//整数运算
            {
                fuhao = num1 % 4 + 1;//得到的余数加一
                cout << num1;//第一个数
                switch (fuhao)//随机运算符
                {
                case 1:cout << "+"; break;
                case 2:cout << "-"; break;
                case 3:cout << "×"; break;
                case 4:cout << "÷"; break;
                }
                cout << num2 << "=" << endl;//第二个数
            }
            if(num==2)
            {
                a = num1;
                b = num2;
                if (num1 > num2)//比较两个随机数的大小,小的作为分子,大的为分母
                {
                    t = a;
                    a = b;
                    b = t;
                }
                cout << "("<<a << "/" << b<<") ";
                fuhao = num1 % 4 + 1;
                switch (fuhao)
                {
                case 1:cout << "+"; break;
                case 2:cout << "-"; break;
                case 3:cout << "×"; break;
                case 4:cout << "÷"; break;
                }
                c = num3;
                d = num4;
                if (num3 > num4)
                {
                    t = c;
                    c = d;
                    d = t;
                }
                cout <<"("<< c << "/" << d<<")"<<"="<<endl;
            }
        }
    }
    • 运行截图

    • 上课未完成原因

    平时缺乏思考锻炼,对一个问题不能做到清楚地分析,将问题拆分开来。

  • 相关阅读:
    [整理] jQuery插件开发
    windows2008r2安装笔记
    javascript 中 typeof 和 instanceof 的区别
    mysql 复制表结构和表数据
    一个例子明白 javascript 中 for 与 for in 的区别
    实现自己的框架
    Jenkins 前端项目构建报错:Vue packages version mismatch
    linux Auditd 审计工具安装报错
    linux定时压缩日志文件脚本
    Robot Framework 3.1.2 执行测试用例报错
  • 原文地址:https://www.cnblogs.com/lk0823/p/5251451.html
Copyright © 2011-2022 走看看