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

    小学生四则运算问题,要求除了整数以外还要求支持真分数

    一、设计思路:

         1、选择整数或者是真分数

         2、若为整数,则需判断运算符是否为除号。

            <1>、若是则除数的取值范围是1-99

            <2>、若不是则后面一个数的取值范围为0-99

            <3>、输出。

         3、若为分数,则需要取四次随机数。

            <1>、比较大小,确定分母。分母的的取值范围均为1-99

            <2>、再判断运算符是否为除号,则后面的那个数的分子与分母的取值范围均为1-99

            <3>、输出。

    二、程序源代码:

    //This is a program of math operation
    
    //2016/3/7
    
    #include<iostream>
    
    #include<stdlib.h>
    
    #include<time.h>
    
    using namespace std;
    
     
    
    int a;//第一个数值
    
    int a1,a2;
    
    int b;//第二个数值
    
    int b1,b2;
    
    int item;
    
    int d;//结果
    
    int p;//判断整数与分数
    
    int y;//判断运算符
    
    char c[4];//运算符
    
     
    
    int main()
    
    {
    
    srand((int)time(NULL));
    
     
    
    c[0]='+';
    
    c[1]='-';
    
    c[2]='*';
    
    c[3]='÷'; 
    
     
    
    for(int i =0;i < 30;i++)//利用循环语句实现30次
    
    {
    
    //判断用分数还是整数
    
    p = (0+rand()%2);
    
    if(p == 0)
    
    {
    
    a = (0+rand()%100);
    
    y = (0 + rand()%4);
    
    if(y == 3)
    
    {
    
    b = (1 + rand()%100);
    
    }
    
    else
    
    {
    
    b = (0 + rand()%100);
    
    }
    
    cout << a << " " << c[y] << " " << b << " " << "="<<endl;
    
    }
    
    else 
    
    {
    
    a1 = (0 + rand()%100);
    
    a2 = (0 + rand()%100);
    
    if(a1 > a2)
    
    {
    
    item = a1;
    
    a1 = a2;
    
    a2 = item;
    
    }
    
    y = (0 + rand()%4);
    
    if(y == 3)
    
    {
    
    b1 = (1 + rand()%100);
    
    b2 = (1 + rand()%100);
    
    if(b1>b2)
    
    {
    
    item = b1;
    
    b1 = b2;
    
    b2 = item;
    
    }
    
    }
    
    else
    
    {
    
    b1 = (0+rand()%100);
    
    b2 = (1+rand()%100);
    
    if(b1>b2)
    
    {
    
    item = b1;
    
    b1 = b2;
    
    b2 = item;
    
    }
    
    }
    
    }
    
    cout << a1<<"/"<<a2<<" " <<c[y]<<" "<<" "<< b1 <<"/"<<b2 << " " <<"="<<endl;
    
    }
    
    }
    

    三、运行截图:

       

    四、未按时完成的原因:编辑程序时没有特别清晰的思路,并且方法运用不熟练,写的时候总是去前面翻看使得速度特别的慢。

  • 相关阅读:
    【UVa】And Then There Was One(dp)
    【vijos】1006 晴天小猪历险记之Hill(dijkstra)
    【UVa】Palindromic Subsequence(dp+字典序)
    【UVa】Wavio Sequence(dp)
    【UVa】Salesmen(dp)
    【UVa】Partitioning by Palindromes(dp)
    小结:特殊的技巧
    java 中 进程和线程的区别
    java中的 sleep() 和 wait() 有什么区别?
    Java 静态static 关键字作用
  • 原文地址:https://www.cnblogs.com/huangliping/p/5250926.html
Copyright © 2011-2022 走看看