zoukankan      html  css  js  c++  java
  • 课堂作业第三周

    题目要求:1 题目避免重复

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

    3 可控制下列参数:

    是否有乘除法,数值范围,加减有无负数,除法有无余数,是否支持分数(真分数,假分数)

    思路:用随机数生成两个数,将两个数分别存入两个数组,每出一道题都与以前的每组进行对比,如果两个数分别都与以前的相同,则重新产生两个随机数。设置参数,用for循环控制出题数量。并且可以控制每行的输出题目的个数。设置参数,用if来判断是否有乘除法。由于用roud()函数产生随机数所以用变量控制数值范围。随机数生成后进行判断,若无负数则要求第一个随机数必须大于第二个否则重新产生。若不产生余数,则让计算机进行判断,无法整除的则跳过。

    日期 开始时间 结束时间 中断时间 净时间 活动 备注
    3/14 10:00 11:10 10分钟 1小时 查阅资料,思考题目 翻看以前的程序
      15:30 17:00   1个半小时 进行初步编写规划 写出题目避免重复
    3/15 9:00 11:00 30分钟 1个半小时 编写出乘除法,加法的程序 和同学聊天,寻找思路
      16:00 17:00   1个小时 编写是否有无余数  
    3/16 16:00 17:00   1个小时 编写加减有无负数 修改错误
    3/18 10:00 11:00   1个小时 调试,修改bug  
     3/19  12:00  13:00  20分钟  40分钟  进行最后的调试,编写文档  
                 
                 
                 

    代码

    #include<iostream>
    #include <iomanip>
    #include<cmath>
    using namespace std;
    void main()
    {
    int i,j,m,n,k,g=0,h,w,a[1000],b[1000],e,p,t,l,f,d,v,x,u=0;
    cout<<"请输入出题数目"<<endl;
    cin>>m;

    cout<<"请输入数值范围"<<endl;
    cin>>n;
    cout<<"请输入每行题目的个数:1-5"<<endl;
    cin>>x;
    cout<<"1 有乘除 2 无乘除"<<endl;
    cin>>w;
    if(w==1){
    cout<<"1 无余数 2 有余数"<<endl;
    cin>>v;}
    cout<<"1 无负数 2 有负数"<<endl;
    cin>>t;

    for(i=0;i<1000;i++)
    {a[i]=0;b[i]=0;
    }

    for(p=0;p<m;p++)
    {
    if(t==1)
    {
    k=rand()%n+1;
    j=rand()%n+1;}
    else{
    l=rand()%2+1;
    f=pow(-1.0,l);
    d=pow(-1.0,l);
    k= f*rand()%n+1;
    j= d*rand()%n+1;
    }
    e=0;
    if(v==1&&w==1&&k%j!=0)
    {
    m=m+1;}
    else{

    if(t==1&&k<j)
    {
    m=m+1;}

    else{
    if(j==0)
    {m=m+1;
    }
    else{

    for(i=0;i<1000;i++)
    {
    if(a[i]==k&&b[i]==j)
    { e=1;
    m=m+1;}
    }
    if(e==0)
    {
    g=g+1;
    for(i=g-1;i<g;i++)
    { a[i]=k;
    b[i]=j;
    }

    if(w==1){

    h=rand()%4+1;

    }
    else{

    h=rand()%2+1;
    }

    if(h==1)
    cout<<setiosflags(ios::right)<<setw(8)<<k<<"+ "<<j<<"="<<" ";
    if(h==2)
    cout<<setiosflags(ios::right)<<setw(8)<<k<<"- "<<j<<"="<<" ";
    if(h==3)
    cout<<setiosflags(ios::right)<<setw(8)<<k<<"* "<<j<<"="<<" ";
    if(h==4)
    cout<<setiosflags(ios::right)<<setw(8)<<k<<"/ "<<j<<"="<<" ";

    u=u+1;
    if(u%x==0)
    cout<<endl;

    }

    }
    }}

    }
    }

    总结

     通过这次编程,我知道了编程前策划的重要性,还有要和同学们相互交流沟通可以拓展自己的思路,寻找灵感,特别是当你遇到瓶颈时,要多看资料。

  • 相关阅读:
    找工作时写过的部分代码
    python编码格式
    dataframe删掉某列
    结巴分词出现AttributeError: 'float' object has no attribute 'decode'错误
    python转换图片格式
    感受野
    swift3 xib自定义view
    iOS 弹出键盘,输入框上移问题
    支付宝问题
    XCode6.0的iOS免证书真机测试方法(MAC及黑苹果均有效)
  • 原文地址:https://www.cnblogs.com/bingoing/p/4346487.html
Copyright © 2011-2022 走看看