20192307 2020-2021-1 《資料結構與面向物件程式設計》實驗二報告
阿新 • • 發佈:2020-10-10
20192307 2020-2021-1 《資料結構與面向物件程式設計》實驗二報告
- 課程:《資料結構與面向物件程式設計》
- 班級: 1923
- 姓名: 常萬里
- 學號: 20192307
- 實驗教師:王志強老師
- 實驗日期:2020年10月8日
- 必修/選修: 必 修
一、實驗內容
- (1) 編寫簡單的計算器,完成加減乘除模運算。
- (2) 要求從鍵盤輸入兩個數,使用判定語句選擇一種操作,計算結果後輸出,然後使用判定和迴圈語句選擇繼續計算還是退出。
- (3) 編寫測試程式碼,測試驗證。(https://www.cnblogs.com/rocedu/p/4472842.html)
二、實驗過程及結果
(1)編寫簡單的計算器,完成加減乘除模運算。
package NBE6; import java.util.Scanner; public class Calculator { public static double Calculator(double x, double y, int z) { double k; if (z == 1) { System.out.println("m + n = " + (x + y)); k = x + y; return k; } if (z == 2) { System.out.println("m - n = " + (x - y)); k = x - y; return k; } if (z == 3) { System.out.println("m * n = " + (y * x)); k = x * y; return k; } if (z == 4) { System.out.println("m / n = " + (x / y)); k = x / y; return k; } if (z == 5) { System.out.println("m % n = " + (x % y)); k = x % y; return k; } if (z == 6) { System.out.println("m % n = " + (Math.pow(x, y))); k = (float) Math.pow(x, y); return k; } return 0; } public static void main(String[] args) { System.out.println(" Welcome!This is a simple calculator.\n"); for (; ; ) { System.out.println("What kind of operations do you want?"); System.out.println("1.Addition"); System.out.println("2.Subtraction"); System.out.println("3.Multiplication"); System.out.println("4.Division"); System.out.println("5.Take remainder"); System.out.println("6.Power"); System.out.println("7.Quit"); Scanner input = new Scanner(System.in); int a = input.nextInt(); if (a < 1 || a > 7) { System.out.println("error!please choose again"); } if (a == 7) { break; } System.out.println("Please input two numbers m and n:"); float m = input.nextFloat(); float n = input.nextFloat(); Calculator(m, n, a); } }
(2)要求從鍵盤輸入兩個數,使用判定語句選擇一種操作,計算結果後輸出,然後使用判定和迴圈語句選擇繼續計算還是退出。
(3)編寫測試程式碼,測試驗證。
package NBE6; import junit.framework.TestCase; import org.testng.annotations.Test; public class CalculatorTest extends TestCase { double m, n; { m = 9; n = 6; } @Test public void testAddition() throws Exception { assertEquals(15,9+6); } @Test public void testSubtraction() throws Exception { assertEquals(3,9-6); } @Test public void testMultiplication() throws Exception { assertEquals(54,9*6); } @Test public void testDivision() throws Exception { assertEquals(1,9/6); } @Test public void testRemainder() throws Exception { assertEquals(3,9%6); } @Test public void testPower() throws Exception { assertEquals(531441.0,Math.pow(9,6)); }
三、實驗過程中遇到的問題和解決過程
- 問題1:idea在進行run的時候,一直出現這個視窗,必須對JAVA程式進行配置
- 問題1解決方案:按照教程重新進行JAVA專案配置,在結構位置進行專案執行就可以了
四、心得體會
- 在這次實驗過程中,我遇到了許多問題,其中既有知識上的漏洞,也有不細心導致的馬虎,這一切都補充,完善,豐富,擴充套件了我的計算機知識體系。在不斷修復問題的過程中,我使用了很多方式去查詢資料,例如:《資料結構與面向物件程式設計》,部落格園平臺,CSDN平臺,碼雲平臺,知乎app,等。在這個Linux命令列的使用中,我還進一步熟悉了Intellij IDEA這個個平臺的使用與執行方式,提高了自己自主學習的能力,為我接下來學習資料結構以及JAVA語言程式設計打下了堅實的基礎,並在不斷探索的過程中逐步提升了自己。