首页 > 技术文章 > 四则运算 渐~健全篇

wantong 2015-03-22 16:15 原文

 

实验要求:

根据老师的要求,新的实验需要实现新增检查对错和统计对错

实验思路:

检查对错:将输入的结果与本来的结果进行对比:

统计对错:与检查对错一同进行,如果答案是正确的,那就将Right加一,如果答案错误,那就Wrong加一。

实验程序:

 

#include<iostream.h>
#include<time.h>
#include<stdlib.h>
#include<stdio.h>

int wrong=0;
int right=0;                    //定义全局变量

void judge(int k1,int k2)        //判断算式是否正确
{
    int m;
    int k3;
   // cout<<"请回答"<<endl;
    cin>>k3;
    if(m=0)
    {
        if(k1+k2!=k3)
       {
          cout<<"回答错误"<<endl;
          wrong++;
       }
       else 
       {
          cout<<"回答正确"<<endl;
          right++;
       } 
    }
    if(m=1)
    {
        if(k1-k2!=k3)
       {
          cout<<"回答错误"<<endl;
          wrong++;
       }
       else 
       {
          cout<<"回答正确"<<endl;
          right++;
       } 
    }
    if(m=2)
    {
        if(k1*k2!=k3)
       {
          cout<<"回答错误"<<endl;
          wrong++;
       }
       else 
       {
          cout<<"回答正确"<<endl;
          right++;
       } 
    }
    if(m=3)
    {
        if(k1/k2!=k3)
       {
          cout<<"回答错误"<<endl;
          wrong++;
       }
       else 
       {
          cout<<"回答正确"<<endl;
          right++;
       } 
    }
}                                




void  chengchu1()            //实现各种定制功能
{   
    int k1,k2;
    int d;
    int x,y;
    int m;
    x=rand()%d;
    y=rand()%d;
    m=rand()%4;
    if(m==0)
    {
      cout<<x<<'+'<<y<<'='<<endl;
      judge(k1,k2);
    }
    if(m==1&&x>=y)
    {
      cout<<x<<'-'<<y<<'='<<endl;
      judge(k1,k2);
    }
    if(m==2)
    {
      cout<<x<<'*'<<y<<'='<<endl;
      judge(k1,k2);
    }
    if(m==3&&y!=0)
    {
      cout<<x<<'/'<<y<<'='<<endl;
      judge(k1,k2);
    }
}
void  chengchu2()
{   
    int k1,k2;
    int d;
    int x,y;
    int m;
    x=rand()%d;
    y=rand()%d;
    m=rand()%4;
    if(m==3)
    {
      cout<<x<<'*'<<y<<'='<<endl;
      judge(k1,k2);
    }
    if(m==4&&y!=0)
    {
      cout<<x<<'/'<<y<<'='<<endl;
      judge(k1,k2);
    }
}
void  jiajian1()
{   
    int k1,k2;
    int d;
    int x,y;
    int m;
    x=rand()%d;
    y=rand()%d;
    m=rand()%4;
    if(m==0&&x>0&&y>0)
    {
      cout<<x<<'+'<<y<<'='<<endl;
      judge(k1,k2);
    }
    if(m==1&&x>=y&&x>0&&y>0)
    {
      cout<<x<<'-'<<y<<'='<<endl;
      judge(k1,k2);
    }
    if(m==2)
    {
      cout<<x<<'*'<<y<<'='<<endl;
      judge(k1,k2);
    }
    if(m==3&&y!=0)
    {
      cout<<x<<'/'<<y<<'='<<endl;
      judge(k1,k2);
    }
}
void  jiajian2()
{   
    int k1,k2;
    int d;
    int x,y;
    int m;
    x=rand()%d;
    y=rand()%d;
    m=rand()%4;
    if(m==3&&x>0&&y>0)
    {
      cout<<x<<'*'<<y<<'='<<endl;
      judge(k1,k2);
    }
    if(m==4&&y!=0&&x>0&&y>0)
    {
      cout<<x<<'/'<<y<<'='<<endl;
      judge(k1,k2);
    }
}

int main()
{   
    int k3;
    int i;
    int a,b,c,d;
    cout<<"需要乘除法吗?需要请输入1:;不需要请输入2:"<<endl;
    cin>>a;
    cout<<"定制题目数:"<<endl;
    cin>>b;
    cout<<"加减需要有负数吗?需要请输入1;不需要请输入2:"<<endl;
    cin>>c;
    cout<<"输入数的范围:"<<endl;
    cin>>d;
    for(i=0;i<b;i++)
    {
    if(c=1)
    {
        if(a=1)
        {
            chengchu1();
            cout<<"请输入答案:"<<endl;
            cin>>k3;
        }
        else 
        {
            chengchu2();
            cout<<"请输入答案:"<<endl;
            cin>>k3;
        }
    }
    else
    {
        if(a=1)
        {
            jiajian1();
            cout<<"请输入答案:"<<endl;
            cin>>k3;
        }
        else 
        {
            jiajian2();
            cout<<"请输入答案:"<<endl;
            cin>>k3;
        }
    }
#include<iostream.h>
#include<time.h>
#include<stdlib.h>
#include<stdio.h>

int wrong=0;
int right=0;                    //定义全局变量

void judge(int k1,int k2)        //判断算式是否正确
{
    int m;
    int k3;
   // cout<<"请回答"<<endl;
    cin>>k3;
    if(m=0)
    {
        if(k1+k2!=k3)
       {
          cout<<"回答错误"<<endl;
          wrong++;
       }
       else 
       {
          cout<<"回答正确"<<endl;
          right++;
       } 
    }
    if(m=1)
    {
        if(k1-k2!=k3)
       {
          cout<<"回答错误"<<endl;
          wrong++;
       }
       else 
       {
          cout<<"回答正确"<<endl;
          right++;
       } 
    }
    if(m=2)
    {
        if(k1*k2!=k3)
       {
          cout<<"回答错误"<<endl;
          wrong++;
       }
       else 
       {
          cout<<"回答正确"<<endl;
          right++;
       } 
    }
    if(m=3)
    {
        if(k1/k2!=k3)
       {
          cout<<"回答错误"<<endl;
          wrong++;
       }
       else 
       {
          cout<<"回答正确"<<endl;
          right++;
       } 
    }
}                                




void  chengchu1()            //实现各种定制功能
{   
    int k1,k2;
    int d;
    int x,y;
    int m;
    x=rand()%d;
    y=rand()%d;
    m=rand()%4;
    if(m==0)
    {
      cout<<x<<'+'<<y<<'='<<endl;
      judge(k1,k2);
    }
    if(m==1&&x>=y)
    {
      cout<<x<<'-'<<y<<'='<<endl;
      judge(k1,k2);
    }
    if(m==2)
    {
      cout<<x<<'*'<<y<<'='<<endl;
      judge(k1,k2);
    }
    if(m==3&&y!=0)
    {
      cout<<x<<'/'<<y<<'='<<endl;
      judge(k1,k2);
    }
}
void  chengchu2()
{   
    int k1,k2;
    int d;
    int x,y;
    int m;
    x=rand()%d;
    y=rand()%d;
    m=rand()%4;
    if(m==3)
    {
      cout<<x<<'*'<<y<<'='<<endl;
      judge(k1,k2);
    }
    if(m==4&&y!=0)
    {
      cout<<x<<'/'<<y<<'='<<endl;
      judge(k1,k2);
    }
}
void  jiajian1()
{   
    int k1,k2;
    int d;
    int x,y;
    int m;
    x=rand()%d;
    y=rand()%d;
    m=rand()%4;
    if(m==0&&x>0&&y>0)
    {
      cout<<x<<'+'<<y<<'='<<endl;
      judge(k1,k2);
    }
    if(m==1&&x>=y&&x>0&&y>0)
    {
      cout<<x<<'-'<<y<<'='<<endl;
      judge(k1,k2);
    }
    if(m==2)
    {
      cout<<x<<'*'<<y<<'='<<endl;
      judge(k1,k2);
    }
    if(m==3&&y!=0)
    {
      cout<<x<<'/'<<y<<'='<<endl;
      judge(k1,k2);
    }
}
void  jiajian2()
{   
    int k1,k2;
    int d;
    int x,y;
    int m;
    x=rand()%d;
    y=rand()%d;
    m=rand()%4;
    if(m==3&&x>0&&y>0)
    {
      cout<<x<<'*'<<y<<'='<<endl;
      judge(k1,k2);
    }
    if(m==4&&y!=0&&x>0&&y>0)
    {
      cout<<x<<'/'<<y<<'='<<endl;
      judge(k1,k2);
    }
}

int main()
{   
    int k3;
    int i;
    int a,b,c,d;
    cout<<"需要乘除法吗?需要请输入1:;不需要请输入2:"<<endl;
    cin>>a;
    cout<<"定制题目数:"<<endl;
    cin>>b;
    cout<<"加减需要有负数吗?需要请输入1;不需要请输入2:"<<endl;
    cin>>c;
    cout<<"输入数的范围:"<<endl;
    cin>>d;
    for(i=0;i<b;i++)
    {
    if(c=1)
    {
        if(a=1)
        {
            chengchu1();
            cout<<"请输入答案:"<<endl;
            cin>>k3;
        }
        else 
        {
            chengchu2();
            cout<<"请输入答案:"<<endl;
            cin>>k3;
        }
    }
    else
    {
        if(a=1)
        {
            jiajian1();
            cout<<"请输入答案:"<<endl;
            cin>>k3;
        }
        else 
        {
            jiajian2();
            cout<<"请输入答案:"<<endl;
            cin>>k3;
        }
    }
    
    }
    cout<<"正确的个数是:"<<right<<endl;
    cout<<"错误的个数是:"<<wrong<<endl;
    cout<<"Finished!Congratulations!";
    return 0;
}

    

实验总结:这次的实验总体来说做的很混乱,实验拖到太晚才实现,下次改进。

实验PSP

 

学生:万彤

 

日期:3.22

 

教师:王建民

 

                                                                                                  项目计划总结

 

 

编程

完善程序

测试程序

阅读书籍

日总计

周日

 

 

 

11:00-11:30

 pm

0.5

周一

 

 

 

11:00-11:30

 pm

0.5

周二

 

 

 

 11:00-11:30

 pm

0.5

周三

 

 

 

11:00-11:30

 pm

0.5

周四

21:00-22:30

 pm

 

 

11:00-11:30

 pm

2.0

周五

 22:00-22:30

 pm

 

 

11:00-11:30

 pm

1.0

周六

 12:30-3:30

pm

 

3:30-4:30

pm

11:00-11:30

 pm

1.0

周总计

5.0

 

1.0

3.5

9.5

 

 

 

 时间记录总结

 

 

 

日期

开始

结束

中断时间

净时间

活动

备注

C

U

3月20

21:00

22:30

1.5

编程

 

 

 

3月21日

22:00

22:30

0.5

编程

 

 

 

3月22日

12:30

15:30

30min

2.5

编程和测试

 中途休息

 

 

 

缺陷记录日志

 

 

 

 

 

 

 

日期

编号

类型

引入阶段

排除阶段

修复时间

修复缺陷

3.20.2015

01

程序

编码

编译

20min

不会定义全局变量,未修复

3.21.2015

02

程序

编码

编译

30min

调用函数

3.22

03

程序

编码

编译

60min

测试程序,修复变量

 

推荐阅读