两个大学实验题,你会做吗?
- 2019 年 10 月 4 日
- 笔记
实验题目
一、实验目的
编写一些简单的测试用程序,作为后续黑盒测试、白盒测试和单元测试的样本。
二、实验题目
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); } }
- 免责声明
【写作说明】以上内容分享给喜欢编程,有梦想的程序员,希望能帮助到你们。以上文章属于此公众号原创所有,如需转载请注明出处。
【免责申明】本公众平台不是广告商,也没有为其他三方网站或者个人做广告宣传。此分享的源代码和文章是小编在项目中、学习中整理的一些认为不错的项目。用户产生的一些自愿下载或者付费行为。与平台没有直接关系