• 软件工程实验一--编程随机生成30个四则运算,算数包括100以内的整数和真分数。


    软件工程实验一:

       ——编程随机生成30个四则运算,算数包括100以内的整数和真分数。

    实验思路:先利用rand()函数随机生成两个算数,包括100以内的整数和真分数,生成100以内的整数,用rand()%100,为了避免在除法运算中除数不能为零,所以运算符右边的整数直接用1+rand()%99;在随机生成真分数时,我先生成两个整数,来充当分子和分母,同样分母不能为零,用1+rand()%99。加减乘除四则运算有整数与整数之间的运算,分数与分数之间的运算,整数和分数之间的运算,分数和整数之间的运算,一共有16种情况,先随机生成一个整数,然后除以16取余数,余数一共有16种情况,作为switch 语句中的事件,来随机生成一个四则运算,再用一个for循环生成30个四则运算。

      1 #include<iostream>
      2 #include<stdlib.h>
      3 #include<time.h>
      4 using namespace std;
      5 void main()
      6 {
      7  int Num_1,Num_2,i,j,a,b;    //定义两个整数变量Num_1,Num_2,在四则运算时做100以内的整数算数,定义i,a为整型,做真分数的分子,定义j,b为整型,做真分数的分母。   
      8     int x,y;                    //定义整型x,y,x为siwtch,case语句中的事件,y随机生成一个数。
      9  srand((unsigned)time(NULL));//运用srand函数设立随机种子,让种子和当前时间有关,避免每次生成的随机数相同。
     10     for(int k=0;k<30;k++)       //运用for循环,共循环30次,生成30随机运算。
     11   {
     12       Num_1=rand()%100;   //运用rand()函数随机生成100以内的整数。
     13    Num_2=1+rand()%99;  //运用rand()函数生成1到100以内的整数,作为第二个运算数,避免在除法运算中0的出现。
     14       i=rand()%100;       //用于随机生成第一个真分数的分子。
     15       j=1+rand()%99;      //用于随机生成第一个真分数的分母。
     16       a=rand()%100;       //用于随机生成第二个真分数的分子。
     17       b=1+rand()%99;      //用于随机生成第二个真分数的分母。
     18       y=1+rand();         //随机生成一个整数,用于除以15取余
     19          x=y%16;             //把取得的余数赋给x,整数和整数之间的四则运算,分数之间的四则运算,整数和分数之间的四则运算,分数和整数之间的四则运算
     20         switch(x)            //运用siwtch,case语句进行条件判断,随机生成。
     21           {
     22               case 0:cout<<Num_1<<"+"<<Num_2<<"="<<endl;break;//case0到case3是整数和整数之间的四则运算
     23               case 1:cout<<Num_1<<"-"<<Num_2<<"="<<endl;break;
     24               case 2:cout<<Num_1<<"*"<<Num_2<<"="<<endl;break;
     25               case 3:cout<<Num_1<<"/"<<Num_2<<"="<<endl;break;
     26               case 4:if(i<j)                                  //case4到case7是分数和分数之间的四则运算
     27                 {
     28                if(a<b)
     29                            {cout<<"("<<i<<"/"<<j<<")"<<"+"<<"("<<a<<"/"<<b<<")"<<"="<<endl;}
     30                else  
     31                   {cout<<"("<<i<<"/"<<j<<")"<<"+"<<"("<<b<<"/"<<a<<")"<<"="<<endl;}
     32                 }
     33               else 
     34         {
     35          cout<<"("<<j<<"/"<<i<<")"<<"+"<<"("<<a<<"/"<<b<<")"<<"="<<endl;
     36         }  
     37         break;
     38               case 5:if(i<j)
     39                 {
     40                if(a<b)
     41       {cout<<"("<<i<<"/"<<j<<")"<<"-"<<"("<<a<<"/"<<b<<")"<<"="<<endl;}  
     42                else
     43       {cout<<"("<<i<<"/"<<j<<")"<<"-"<<"("<<b<<"/"<<a<<")"<<"="<<endl;}
     44                 }
     45                else
     46                   {
     47        cout<<"("<<j<<"/"<<i<<")"<<"-"<<"("<<a<<"/"<<b<<")"<<"="<<endl;
     48          }  
     49          break;
     50              case 6:if(i<j)
     51                {
     52               if(a<b)
     53         {cout<<"("<<i<<"/"<<j<<")"<<"*"<<"("<<a<<"/"<<b<<")"<<"="<<endl;}
     54               else 
     55         {cout<<"("<<i<<"/"<<j<<")"<<"*"<<"("<<b<<"/"<<a<<")"<<"="<<endl;}
     56          
     57                }
     58               else
     59       {
     60        cout<<"("<<j<<"/"<<i<<")"<<"*"<<"("<<a<<"/"<<b<<")"<<"="<<endl;
     61          }   
     62         break;
     63              case 7:if(i<j)
     64                {
     65               if(a<b)
     66         {cout<<"("<<i<<"/"<<j<<")"<<"/"<<"("<<a<<"/"<<b<<")"<<"="<<endl;}
     67        else  
     68         {cout<<"("<<i<<"/"<<j<<")"<<"/"<<"("<<b<<"/"<<a<<")"<<"="<<endl;}
     69          
     70                }
     71               else 
     72       {
     73        cout<<"("<<j<<"/"<<i<<")"<<"/"<<"("<<a<<"/"<<b<<")"<<"="<<endl;
     74          }
     75         break;
     76           case 8:if(i<j)                              //case8到case11是分数和整数之间的四则运算
     77                  cout<<i<<"/"<<j<<"+"<<Num_2<<"="<<endl;
     78              else 
     79               cout<<j<<"/"<<i<<"+"<<Num_2<<"="<<endl;
     80        break;
     81           case 9:if(i<j)
     82                  cout<<i<<"/"<<j<<"-"<<Num_2<<"="<<endl;
     83               else
     84                  cout<<j<<"/"<<i<<"-"<<Num_2<<"="<<endl;
     85               break;
     86           case 10:if(i<j)
     87                  cout<<i<<"/"<<j<<"*"<<Num_2<<"="<<endl;
     88             else
     89            cout<<i<<"/"<<j<<"*"<<Num_2<<"="<<endl;
     90           break;
     91           case 11:if(i<j)
     92                   cout<<i<<"/"<<j<<"/"<<Num_2<<"="<<endl;
     93             else
     94             cout<<i<<"/"<<j<<"/"<<Num_2<<"="<<endl;
     95             break;
     96              case 12:if(a<b)                           //case12到case15是分数和整数之间的四则运算
     97                 cout<<Num_1<<"+"<<"("<<a<<"/"<<b<<")"<<"="<<endl;  
     98             else
     99           cout<<Num_1<<"+"<<"("<<b<<"/"<<a<<")"<<"="<<endl;
    100             break;
    101              case 13:if(a<b)
    102                cout<<Num_1<<"-"<<"("<<a<<"/"<<b<<")"<<"="<<endl;
    103             else
    104       cout<<Num_1<<"-"<<"("<<b<<"/"<<a<<")"<<"="<<endl;
    105             break;
    106              case 14:if(a<b)
    107                         cout<<Num_1<<"*"<<"("<<a<<"/"<<b<<")"<<"="<<endl;
    108             else
    109       cout<<Num_1<<"*"<<"("<<b<<"/"<<a<<")"<<"="<<endl;
    110                break;
    111              case 15:if(a<b)
    112                        cout<<Num_1<<"/"<<"("<<a<<"/"<<b<<")"<<"="<<endl;
    113             else
    114          cout<<Num_1<<"/"<<"("<<b<<"/"<<a<<")"<<"="<<endl;
    115               break;
    116            }
    117      } 
    118 }

      

        

  • 相关阅读:
    c# 02-18 值类型 引用类型 字符串的不可变性 字符串的处理方法
    c#0218-命名空间
    c#学习0217
    BootStrap学习
    c#学习0216
    AngularJS学习
    java面试题之什么是死锁、活锁、饿死和竞态条件?
    java面试题之能创建volatile数组吗?
    java面试题之sleep()和wait()方法的区别
    java面试题之Thread的run()和start()方法有什么区别
  • 原文地址:https://www.cnblogs.com/luxin123/p/5244690.html
Copyright © 2020-2023  润新知