结对编程(二)

结对编程作业:

题目:构造程序,分别是:

•不能触发Fault

•触发Fault,但是不能触发Error。

•触发Error,但是不能产生Failure。

编程语言:java

结对对象:沙夫都  博客地址:http://www.cnblogs.com/S-vendor/

双方贡献:1:1

结对照片:

项目介绍:让用户输入一句只有变量名和值的代码(例如 aInt=45;),程序将分析出变量名和值(例如 name:aInt  value:45)

源代码:

public class Lexer {

    public static void main(String[] args) {        Scanner in = new Scanner(System.in);        System.out.println("please input your code");

        String s = in.next();        in.close();        try {            divide(s);        }catch (Exception e){            System.err.println("Error");        }    }

    public static void divide(String s) {        System.out.println("your inputted is "+s);        String name=s.substring(0,s.indexOf("="));        String value=s.substring(s.indexOf("=")+1,s.length()-1);

        System.out.println("name:"+name);        System.out.println("value:"+value);    }}

1.不触发Fault

输入”sum=12;“ 时。

看似没错,但是看程序就会发现是有问题的。

2.触发Fault 但不Error

当输入为:

若输入为"sum==12;" 时,

很明显输出的value将是”=12“,显然不是我们想得到的结果。

2.触发Error

String s = in.next();

若输入为"sum = 12;" 时,输入的就只是sum,因为next()的中断符是回车或空格。此处也使程序产生Fault

此外:
String name=s.substring(0,s.indexOf("="));若输入中没有”=“ 则将触发Error
所以:设计程序是应该考虑用户的输入会不会导致程序的Error甚至是Failure,当用户输入不符合我们的需要时,应当及时提示输入有误并重新输入。
				
时间: 2024-10-10 07:37:52

结对编程(二)的相关文章

结对编程二

结对对象:吴雪琴 对方博客:http://www.cnblogs.com/snowing0119/p/5406105.html 贡献比例:1:1 结对方式:电脑编程,我负责写代码队友主要提供思路并检查错误. 结对图片: 队友优点:想到的问题较为全面,认真且心细,能较清楚的表达出自己的想法和思路. 题目要求: 构造程序,分别是: •不能触发Fault. •触发Fault,但是不能触发Error. •触发Error,但是不能产生Failure. 问题描述: 假设默认长度单位为米,编写一个计算为各种形

结对编程——黄金点游戏之旅【二】

一.黄金点游戏是一个数字小游戏,其游戏规则是: N个同学(N通常大于10),每人写一个0-100之间的有理数(不包括0或100),交给裁判,裁判算出所有数字的平均值,然后乘以0.618(黄金分割常数),得到G值.提交的数字最靠近G(取绝对值)的同学得到N分,离G最远的同学得到-2分,其他同学得0分. 二.后续功能的实现功能 经过三天的努力,我们终于完成了开始游戏.取消准备.查看历史纪录.添加测试以及退出登录功能. 1.开始游戏(准备游戏)功能介绍:玩家登陆成功后直接进入游戏界面,下方的准备窗口会

20165210 结对编程练习:四则运算(二)

20165210 结对编程练习:四则运算(二) 题目需求: 四则运算: 自动生成 要求有加减乘除 支持真分数 统计正确率 需求分析: 首先我们可以把除法和分数归为一类 有一个类进行随机生成数 有一个类进行随机生成符号 主类进行四则运算和统计正确率 四则运算的计算式 分数的计算式 设计思路: 原文地址:https://www.cnblogs.com/lyklyk/p/8910285.html

实验二结对编程 第一阶段

一.实验目标: 1)体验敏捷开发中的两人合作. 2)进一步提高个人编程技巧与实践. 二 .实验内容: 1)根据以下问题描述,练习结对编程(pair programming)实践: 2)要求学生两人一组,自由组合.每组使用一台计算机,二人共同编码,完成实验要求. 3)要求在结对编程工作期间,两人的角色至少切换 4 次: 4)编程语言不限,版本不限.建议使用 Python 或 JAVA 进行编程. 三 .问题描述: 我选择的问题是四则运算,具体要求如下: 开发一个自动生成小学四则运算题目的命令行 “

实验二:结对编程 第一阶段

一.实验目标: 1)体验敏捷开发中的两人合作. 2)进一步提高个人编程技巧与实践. 二 .实验内容: 1)根据以下问题描述,练习结对编程(pair programming)实践: 2)要求学生两人一组,自由组合.每组使用一台计算机,二人共同编码,完成实验要求. 3)要求在结对编程工作期间,两人的角色至少切换 4 次: 4)编程语言不限,版本不限.建议使用 Python 或 JAVA 进行编程. 三.问题描述 四则运算:开发一个自动生成小学四则运算题目的命令行 “软件”.实现 输入你要出题的个数,

实验二 结对编程(阶段一)

实验记录—第一阶段 自我学习Github的相关知识的记录: https:////www.cnblogs.com/Incoming22/p/12419553.html 一.查阅资料    ?? 查阅相关资料加深对敏捷开发的和结对编程的理解: 1.敏捷开发 (1)概念: 敏捷开发以用户的需求进化为核心,采用迭代.循序渐进的方法进行软件开发.在敏捷开发中,软件项目在构建初期被切分成多个子项目,各个子项目的成果都经过测试,具备可视.可集成和可运行使用的特征.换言之,就是把一个大项目分为多个相互联系,但也

实验二—结对编程第一环节

结对编程(英语:Pair programming)是一种敏捷软件开发的方法,两个程序员在一个计算机上共同工作.一个人输入代码,而另一个人审查他输入的每一行代码.输入代码的人称作驾驶员,审查代码的人称作观察员(或导航员).两个程序员经常互换角色. 在结对编程中,观察员同时考虑工作的战略性方向,提出改进的意见,或将来可能出现的问题以便处理.这样使得驾驶者可以集中全部注意力在完成当前任务的“战术”方面.观察员当作安全网和指南.结对编程对开发程序有很多好处.比如增加纪律性,写出更好的代码等. 一.实验目

实验二 结对编程 第一阶段

一.实验目标: 1)体验敏捷开发中的两人合作. 2)进一步提高个人编程技巧与实践. 二 .实验内容 1)根据以下问题描述,练习结对编程(pair programming)实践: 2)要求学生两人一组,自由组合.每组使用一台计算机,二人共同编码,完成实验要求. 3)要求在结对编程工作期间,两人的角色至少切换 4 次: 4)编程语言不限,版本不限.建议使用 Python 或 JAVA 进行编程. 三.实验过程 1)查阅相关资料加深对敏捷开发和结对编程的理解: 敏捷开发:敏捷开发是一种从1990年代开

实验二 结对编程第一阶段

结对编程:第一阶段 ***一.实验目标:*** 1)体验敏捷开发中的两人合作. 2)进一步提高个人编程技巧与实践. ***二 .实验内容:*** 1)根据以下问题描述,练习结对编程(pair programming)实践: 2)要求学生两人一组,自由组合.每组使用一台计算机,二人共同编码,完成实验要求. 3)要求在结对编程工作期间,两人的角色至少切换 4 次: 4)编程语言不限,版本不限.建议使用 Python 或 JAVA 进行编程. ***三.第一阶段:*** ***1) 组队:*** 我的