兩個大學實驗題,你會做嗎?
- 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); } }- 免責聲明
【寫作說明】以上內容分享給喜歡編程,有夢想的程式設計師,希望能幫助到你們。以上文章屬於此公眾號原創所有,如需轉載請註明出處。
【免責申明】本公眾平台不是廣告商,也沒有為其他三方網站或者個人做廣告宣傳。此分享的源程式碼和文章是小編在項目中、學習中整理的一些認為不錯的項目。用戶產生的一些自願下載或者付費行為。與平台沒有直接關係