第一次结对编程尝试
结对编程
成员简介
成员a 1959104
成员b 1860112
之前我们在小组作业中有不错的合作经历,水平相似,于是再次合作。
目标
小学老师要每周给同学出300道四则运算练习题。
有如下两个目标:
- 两个运算符,100 以内的数字,不需要写答案。【估计时间1】
- 需要写答案,并且保证答案在 0..100 之间 【估计时间2】
不限实现方法,预估写程序所需时间,立即写出代码。
通过三十秒的讨论,我们决定使用C语言实现。并预估时间:
- 【目标1】30min
- 【目标2】30min
实现过程
成员a 完成目标1
算法设计
通过讨论得出使用循环算法来实现。
c++语法问题
通过伙伴提示、百度解决语法问题。例如printf用法、switch case用法、scanf用法等。
成员b 完成目标2
审题错误,忽略了“结果为100以内”的条件。
共同撰写博客,成员a发出
程序代码与截图
#include <stdio.h> 
#include <stdlib.h>
int main(){
    int num1,num2,num3;
	float tempt,result;
    for(int i=1;i<=300;i++){
        num1 = rand() % 100 + 1;
	    //rand()得到0-randmax的随机数。
	    //%100求余,得到0-99的随机数,加1后得到1-100 
	    num2 = rand() % 100 + 1;
    	num3 = rand() % 100 + 1;
    int fuhao1 = rand() % 4, fuhao2 = rand() % 4;
	switch(fuhao1){
    	case 0: tempt=num1+num2; printf("%d. %d+%d",i,num1,num2); break;
        case 1: tempt=num1-num2;printf("%d. %d-%d",i,num1,num2); break;
    	case 2: tempt=num1*num2;printf("%d. %d*%d",i,num1,num2); break;
        case 3: tempt=num1/num2;printf("%d. %d/%d",i,num1,num2); break;
	    default:printf("error"); break;
	    }
	switch(fuhao2){
	    case 0: printf("+%d\n",num3);result=tempt+num3;printf("答案是:%.2f\n",result); break;
        case 1: printf("-%d\n",num3);result=tempt-num3;printf("答案是:%.2f\n",result); break;
	    case 2: printf("*%d\n",num3);result=tempt*num3;printf("答案是:%.2f\n",result); break;
        case 3: printf("/%d\n",num3);result=tempt/num3;printf("答案是:%.2f\n",result); break;
    	default:printf("error\n"); break;
	    }
    }
    return 0;
}
目标一:

目标二:

感悟
成员a
如果是我独自开发的话,可能会花费更多一些的时间。成员b在我敲代码的时候给出了很多即时的提示,不需要运行代码就可以改正很多小错误。
算法的设计中,我也觉得在讨论中脑子能转得更快。
成员b
如果是我独自开发的话,可能也同样会花费更多一些的时间。成员a在我敲代码的时候也同样给出了很多提示,不需要运行代码就可以改正很多小错误。
算法的设计中,我也觉得在讨论中更有效率。在看和被看的过程中,总会感觉自己码字没有对方快。
我们每一项目标实际花费的时间比预估的时间,都要久十分钟。

 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号