前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >两个大学实验题,你会做吗?

两个大学实验题,你会做吗?

作者头像
程序源代码
发布2019-09-17 16:37:57
6120
发布2019-09-17 16:37:57
举报
文章被收录于专栏:程序源代码程序源代码

实验题目

一、实验目的

编写一些简单的测试用程序,作为后续黑盒测试、白盒测试和单元测试的样本。

二、实验题目

1、三角形判断;

2、计算给定日期的后一天日期。

三、实验环境

操作系统:Windows;

编程环境:Eclipse。

【注】 对编程语言和开发环境不做严格限制,但是因为单元测试会针对JUnit讲解,因此建议使用Java语言,Eclipse开发环境。

四、实验内容

1、三角形判断

问题描述:程序接受三个0~200之间的整数a、b、c作为输入参数,代表三角形的三个边;超出范围的输入给出错误提示;根据数值判断三角形所属类型:非三角形、一般三角形、直角三角形、等腰三角形、等边三角形。

附加要求:为便于后面进行单元测试,判别算法最好与输入输出部分独立设计。

2、计算给定日期的后一天日期

问题描述:程序接受三个整数y、m、d作为输入参数,分别代表年、月、日;输入日期范围为1700年1月1日至2100年12月31日,超出范围或无效的输入给出错误提示;根据输入计算指定日期的后一天日期,输出后一天的年、月、日。

附加要求:为便于后面进行单元测试,判别算法最好与输入输出部分独立设计。

  1. 三角形判断
代码语言:javascript
复制
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("判定为:非三角形");
 }
 }
}
  1. 计算给定日期的后一天日期
代码语言:javascript
复制
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);
     }
}
  1. 免责声明

写作说明】以上内容分享给喜欢编程,有梦想的程序员,希望能帮助到你们。以上文章属于此公众号原创所有,如需转载请注明出处。

免责申明】本公众平台不是广告商,也没有为其他三方网站或者个人做广告宣传。此分享的源代码和文章是小编在项目中、学习中整理的一些认为不错的项目。用户产生的一些自愿下载或者付费行为。与平台没有直接关系

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-09-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序源代码 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档