1. 程式人生 > 實用技巧 >20192307 2020-2021-1 《資料結構與面向物件程式設計》實驗二報告

20192307 2020-2021-1 《資料結構與面向物件程式設計》實驗二報告

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語言程式設計打下了堅實的基礎,並在不斷探索的過程中逐步提升了自己。

五、參考資料