结对编程
Posted huerji
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了结对编程相关的知识,希望对你有一定的参考价值。
本次结对编程我和我的同学,2152734一起进行了四则运算的编程,本次编程主要难点在于两个运算符的计算先后顺序,我们想来想去无论是判断第一个运算符是*/还是+-最后判断分类都是把所有种类都分类出来,于是我们干脆就直接将所有可能性直接利用switch语句列出,这样虽然代码量大了一点,但是节约了计算机判断的层层嵌套,节约资源,我们的代码中利用数字代替运算符,利用两个运算符代替的数字乘积代替判断来进行输出,我们在运行时直接筛选掉了结果小于0或大于100的运算并用continue不与输出,编程时我的同学还指出了我除数不能为0的错误,完成编程后我们体会到了结对编程确实可以提高效率。
代码:
#include<iostream>
#include<stdlib.h>
#include<time.h>
using namespace std;
int main()
int count=0,a=0,b=0,c=-100,d=0,e=0,f=0;
float jieguo;
char l[4];
while(count<=300)
c=-1;
a=rand()%100;
b=rand()%100;
d=rand()%100;
e=rand()%100;
f=rand()%100;
if(d<25) c=1;
else if(d<50 && d>=25) c=2;
else if(d<75 && d>=50) c=3;
else c=4;
if(f<25) f=-5;
else if(f<50 && f>=25) f=-6;
else if(f<75 && f>=50) f=-7;
else f=-8;
c=c*f;
switch(c)
case -5:
if(a+b+e<100)
count++;
cout<<a<<"+"<<b<<"+"<<e<<"="<<endl;
break;
case -6:
if(a+b-e<100 && a+b-e>0)
count++;
cout<<a<<"+"<<b<<"-"<<e<<"="<<endl;
break;
case -7:
if(a+b*e<100 && a+b*e>0)
count++;
cout<<a<<"+"<<b<<"*"<<e<<"="<<endl;
break;
case -8:
if (e==0)
continue;
if(a+b/e<100 && a+b/e>0)
count++;
cout<<a<<"+"<<b<<"/"<<e<<"="<<endl;
break;
case -10:
if(a-b+e<100 && a-b+e>0)
count++;
cout<<a<<"-"<<b<<"+"<<e<<"="<<endl;
break;
case -12:
if(a-b-e<100 && a-b-e>0)
count++;
cout<<a<<"-"<<b<<"-"<<e<<"="<<endl;
break;
case -14:
if(a-b*e<100 && a-b*e>0)
count++;
cout<<a<<"-"<<b<<"*"<<e<<"="<<endl;
break;
case -16:
if (e==0)
continue;
if(a-b/e<100 && a-b/e>0)
count++;
cout<<a<<"-"<<b<<"/"<<e<<"="<<endl;
break;
case -15:
if(a*b+e<100 && a*b+e>0)
count++;
cout<<a<<"*"<<b<<"+"<<e<<"="<<endl;
break;
case -18:
if(a*b-e<100 && a*b-e>0)
count++;
cout<<a<<"*"<<b<<"-"<<e<<"="<<endl;
break;
case -21:
if(a*b*e<100 && a*b*e>0)
count++;
cout<<a<<"*"<<b<<"*"<<e<<"="<<endl;
break;
case -24:
if (f==-8)
if (e==0)
continue;
if(a*b/e<100 && a*b/e>0)
count++;
cout<<a<<"*"<<b<<"/"<<e<<"="<<endl;
else
if (b==0)
continue;
if(a/b-e<100 && a/b-e>0)
count++;
cout<<a<<"/"<<b<<"-"<<e<<"="<<endl;
break;
case -20:
if (b==0)
continue;
if(a/b+e<100 && a/b+e>0)
count++;
cout<<a<<"/"<<b<<"+"<<e<<"="<<endl;
break;
case -28:
if (b==0)
continue;
if(a/b*e<100 && a/b*e>0)
count++;
cout<<a<<"/"<<b<<"*"<<e<<"="<<endl;
break;
case -32:
if (b==0 || e==0)
continue;
if(a/b/e<100 && a/b/e>0)
count++;
cout<<a<<"/"<<b<<"/"<<e<<"="<<endl;
break;
case -100:break;
运行结果:
结对编程心得
结对编程是我第一次听说到的一个编程方式,结对编程就是两个人组成一个小队伍进行编程,是一种新的编程思想。结对编程的优点有以下这几点第一点,就是思考问题的角度,一个人思考问题肯定没有两个人思考问题来的明白,看的清楚。当一个东西你理解了,并且还能清楚的表达的时候,那么思路会更清晰。第二点,就是加强交流,使得知识能够更快的再整个团队传播,使得代码全员共享。第三点就是所有的代码都会有备份,防止丢失。但结对编程也是有缺点的,首先是编码的效率低下问题。接下来是结对对象的交换,因为结对编程是在一个小组成员中进行,所以结对对象的交换最好是在一组结对成员完成阶段任务后再进行交换,避免结对对象思想的缺乏。以上这些就是自己对结对编程的心得。
以上是关于结对编程的主要内容,如果未能解决你的问题,请参考以下文章