实验题目
一、实验目的
编写一些简单的测试用程序,作为后续黑盒测试、白盒测试和单元测试的样本。
二、实验题目
1、三角形判断;
2、计算给定日期的后一天日期。
三、实验环境
操作系统:Windows;
编程环境:Eclipse。
【注】 对编程语言和开发环境不做严格限制,但是因为单元测试会针对JUnit讲解,因此建议使用Java语言,Eclipse开发环境。
四、实验内容
1、三角形判断
问题描述:程序接受三个0~200之间的整数a、b、c作为输入参数,代表三角形的三个边;超出范围的输入给出错误提示;根据数值判断三角形所属类型:非三角形、一般三角形、直角三角形、等腰三角形、等边三角形。
附加要求:为便于后面进行单元测试,判别算法最好与输入输出部分独立设计。
2、计算给定日期的后一天日期
问题描述:程序接受三个整数y、m、d作为输入参数,分别代表年、月、日;输入日期范围为1700年1月1日至2100年12月31日,超出范围或无效的输入给出错误提示;根据输入计算指定日期的后一天日期,输出后一天的年、月、日。
附加要求:为便于后面进行单元测试,判别算法最好与输入输出部分独立设计。
package testunit;
import java.util.Arrays;
import java.util.Scanner;
/**
* @author 程序源代码
* @date 20190912
* 功能:三角形判断
*
*/
public class Sanjiaoxing {
public static int[] side;//定义变量
public static void main(String[] args) {
side = new int[3];
Scanner input = new Scanner(System.in);
try {
//输入三个变量值,即三角形的三个边值a/b/c
side[0] = input.nextInt();
side[1] = input.nextInt();
side[2] = input.nextInt();
Arrays.sort(side);
// 调用判断值大小规则
SideF(side[0], side[1], side[2]);
// 调用判断三角形规则
triangle(side[0], side[1], side[2]);
} catch (IllegalArgumentException e) {
e.getMessage();
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
} finally {
input.close();
}
}
// 调用判断值大小规则
public static void SideF(int a, int b, int c)throws Exception {
//判断a值
if ((a>=200) || (a<=0)) {
System.out.println("side[0]:值不合法");
}else {
throw new IllegalArgumentException("side值不合法");
}
//判断b值
if ((b>=200) || (b<=0)) {
System.out.println("side[1]:值不合法");
}else {
throw new IllegalArgumentException("side值不合法");
}
//判断c值
if ((c>=200) || (c<=0)) {
System.out.println("side[2]:值不合法");
}else {
throw new IllegalArgumentException("side值不合法");
}
}
// 调用判断三角形规则
public static void triangle(int a, int b, int c) throws Exception {
// 判断是否可以构成三角形(两边之和大于第三边:a+b>c;两边之差小于第三边:c-a<a)
if ((a + b > c) && (a - b < c)) {
//直角三角形
if(a*a==b*b+c*c || b*b==a*a+c*c || c*c==a*a+b*b){
System.out.println("判定为:直角三角形");
}
//等边三角形
if(a==b||b==c||a==c){
System.out.println("判定为:等边三角形");
}
//一般三角形
System.out.println("判定为:一般三角形");
} else {
throw new IllegalArgumentException("判定为:非三角形");
}
}
}
package testunit;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
//计算给定日期的后一天日期
public class S2 {
public void getDay() {
String day = "2018-03-19";
Calendar c = Calendar.getInstance();
Date date = null;
try {
date = new SimpleDateFormat("yy-MM-dd").parse(day);
} catch (ParseException e) {
e.printStackTrace();
}
c.setTime(date);
int day1 = c.get(Calendar.DATE);
c.set(Calendar.DATE, day1 - 1);
String dayAfter = new SimpleDateFormat("yyyy-MM-dd").format(c.getTime());
System.out.println(dayAfter);
}
}
【写作说明】以上内容分享给喜欢编程,有梦想的程序员,希望能帮助到你们。以上文章属于此公众号原创所有,如需转载请注明出处。
【免责申明】本公众平台不是广告商,也没有为其他三方网站或者个人做广告宣传。此分享的源代码和文章是小编在项目中、学习中整理的一些认为不错的项目。用户产生的一些自愿下载或者付费行为。与平台没有直接关系