瀏覽代碼

Merge branch 'master' of roympanju_1/ZCW-MacroLabs-OOP-ScientificCalculator into master

roympanju_1 6 年之前
父節點
當前提交
41a74e5155

+ 0
- 62
Calculator.java 查看文件

@@ -1,62 +0,0 @@
1
- 
2
-
3
-/**
4
- * Created by leon on 2/9/18.
5
- */
6
-import java.util.*;
7
-
8
-public class Calculator {
9
-    private int x;
10
-    CoreFunctions coreOperator = new coreFunction();
11
-
12
-    public Operations {
13
-        while (true) {
14
-            
15
-        Scanner input = new Scanner(System.ln);
16
-        System.out.result*"Enter a command: ");
17
-        Double command = 0.0;
18
-        
19
-        Scanner input = new Scanner(System.in);
20
-        
21
-        Math math = new Math();
22
-        
23
-        double number1 = 0;       
24
-        double number2 = 0;
25
-        char operator;
26
-        double answer = 0.0;
27
-        boolean answer = false;
28
-        
29
-        while(done == false) {
30
-              System.out.println('0');  
31
-            }
32
-            
33
-        double number1 = input.nextDouble();
34
-        double number2= input.nextDouble();
35
-        String[] operators = new String[] { "+","-","*","/","=" };
36
-        
37
-        switch(operator) {
38
-            case '+': 
39
-            Math.add(number1 + number2);
40
-            break;
41
-            case '-':
42
-            Math.subtract(1 - number2);
43
-            break;
44
-            case '*':
45
-            Math.multiply(number1 * number2);
46
-            break;
47
-        
48
-            case '/':
49
-         if (number2 == 0) {
50
-             System.out.println("Err");
51
-         } else {
52
-             System.out.println(number1 / number2);}
53
-         }
54
-        System.out.println(answer()); 
55
-    }
56
-}
57
-    
58
-
59
-
60
-
61
-
62
-

+ 19
- 6
Console.java 查看文件

@@ -1,11 +1,14 @@
1
- 
1
+
2
+
3
+import java.util.Scanner;
2 4
 
3 5
 import java.util.*;
4 6
 
7
+
5 8
 /**
6 9
  * Created by leon on 2/9/18.
7 10
  */
8
-public class Console extends Display {
11
+public class Console extends DiplayMode {
9 12
 
10 13
     public static void print(String output, Object... args) {
11 14
         System.out.printf(output, args);
@@ -15,6 +18,10 @@ public class Console extends Display {
15 18
         print(output + "\n", args);
16 19
     }
17 20
 
21
+    public static void printResult(Double result) {
22
+        System.out.println("Result = " + result);
23
+    }
24
+
18 25
     public static String getStringInput(String prompt) {
19 26
         Scanner scanner = new Scanner(System.in);
20 27
         println(prompt);
@@ -23,12 +30,18 @@ public class Console extends Display {
23 30
     }
24 31
 
25 32
     public static Integer getIntegerInput(String prompt) {
26
-        return null;
33
+        Scanner scanner_1 = new Scanner(System.in);
34
+        println(prompt);
35
+        Integer firstNumber = scanner_1.nextInt();
36
+        return firstNumber;
27 37
     }
28 38
 
29 39
     public static Double getDoubleInput(String prompt) {
30
-        return null;
40
+        Scanner scanner = new Scanner(System.in);
41
+        println(prompt);
42
+        Double userInput = scanner.nextDouble();
43
+        return userInput;
31 44
     }
32
-    add double(x + y)
33
-    return (x + y);
45
+
46
+
34 47
 }

+ 0
- 46
ConsoleTest.java 查看文件

@@ -1,46 +0,0 @@
1
-
2
-
3
-import static org.junit.Assert.*;
4
-import org.junit.After;
5
-import org.junit.Before;
6
-import org.junit.Test;
7
-
8
-/**
9
- * The test class ConsoleTest.
10
- *
11
- * @author  (your name)
12
- * @version (a version number or a date)
13
- */
14
-public class ConsoleTest
15
-{
16
-    private Console Display;
17
-    private Console doubleEntered;
18
-
19
-    /**
20
-     * Default constructor for test class ConsoleTest
21
-     */
22
-    public ConsoleTest()
23
-    {
24
-    }
25
-
26
-    /**
27
-     * Sets up the test fixture.
28
-     *
29
-     * Called before every test case method.
30
-     */
31
-    @Before
32
-    public void setUp()
33
-    {
34
-        Display = new Console();
35
-    }
36
-
37
-    /**
38
-     * Tears down the test fixture.
39
-     *
40
-     * Called after every test case method.
41
-     */
42
-    @After
43
-    public void tearDown()
44
-    {
45
-    }
46
-}

+ 0
- 75
CoreFunctions.java 查看文件

@@ -1,75 +0,0 @@
1
-import java.math.*;
2
-import java.lang.*;
3
-import java.util.*;
4
-/**
5
- * Write a description of class CoreFunctions here.
6
- *
7
- * @author (your name)
8
- * @version (a version number or a date)
9
- */
10
-public class CoreFunctions extends Console {
11
-    //** instance variables - replace the example below with your own
12
-    
13
-    private double x = 0;
14
-    private double y = 0;
15
-    private char operator;
16
-    boolean answer = false;
17
-    
18
-    
19
-    public static void main(String[] args)
20
-    {
21
- 
22
-    
23
-    /**
24
-     * Constructor for objects of class CoreFunctions
25
-     */
26
-    
27
-    
28
-   //** initialise instance variables
29
-        
30
-    
31
-
32
-    /**
33
-     * An example of a method - replace this comment with your own
34
-     *
35
-     * @param  y  a sample parameter for a method
36
-     * @return    the sum of x and y
37
-     */
38
-    
39
-    switch (operators)
40
-    {
41
-        case '+':
42
-         Math.add(double x + double y);
43
-         return ;
44
-        case '-':
45
-        Math.subtract(double x - double y);
46
-        break;
47
-        case '*':
48
-        Math.multiply(double x * double y);
49
-        break;
50
-        case '/':
51
-        
52
-        Math.divide(double(x / y);  
53
-    } 
54
-    public double baseValue();
55
-    {
56
-        double baseValue = super.getTotal();
57
-        return baseValue + bonus;
58
-        
59
-        
60
-    double x = 0;
61
-    while(
62
-    
63
-    if (str.length() == 0) 
64
-    {
65
-        System.out.println("0");
66
-        else if(n == 3){
67
-            System.out.println("NaN"); 
68
-    
69
-         
70
-        GetTotal getSum = new GetTotal();
71
-        System.out.println(GetTotal); 
72
-        return ;
73
-    }
74
-}
75
-

+ 0
- 52
CoreFunctionsCo.java 查看文件

@@ -1,52 +0,0 @@
1
-
2
-/**
3
- * Write a description of class CoreFunctionsCo here.
4
- *
5
- * @author (your name)
6
- * @version (a version number or a date)
7
- */
8
-public class CoreFunctionsCo
9
-{
10
-    // instance variables - replace the example below with your own
11
-private int x;
12
-
13
-/**
14
-     * Constructor for objects of class CoreFunctionsCo
15
-     */
16
-    public CoreFunctionsCo()
17
-    {
18
-        // initialise instance variables
19
-        x = 0;
20
-    }
21
-    /**
22
-     * An example of a method - replace this comment with your own
23
-     *
24
-     * @param  y  a sample parameter for a method
25
-     * @return    the sum of x and y
26
-     */
27
-    public static void runCommand() 
28
-    {
29
-    Scanner input = new Scanner(System.in);
30
-    Double result = 0.0;
31
-       coreFunctions Corefunctions = newCoreFunctions();
32
-       if (operator == "+") {
33
-        String input = input.next();
34
-        char grade;
35
-       
36
-        if (testscore >= 90) 
37
-        {
38
-         return x - 'A';
39
-        }
40
-    else if (double multiply(x * y)
41
-    {
42
-        return x * 'y';
43
-    }
44
-    else if (testscore >= 70) 
45
-    {
46
-        return x / 'y';
47
-    }
48
-    else public double squareRoot(double x) 
49
-    {
50
-    return Math.sqrt(x); 
51
-    }
52
-}

+ 0
- 42
CoreFunctionsCoTest.java 查看文件

@@ -1,42 +0,0 @@
1
-
2
-
3
-import static org.junit.Assert.*;
4
-import org.junit.After;
5
-import org.junit.Before;
6
-import org.junit.Test;
7
-
8
-/**
9
- * The test class CoreFunctionsCoTest.
10
- *
11
- * @author  (your name)
12
- * @version (a version number or a date)
13
- */
14
-public class CoreFunctionsCoTest
15
-{
16
-    /**
17
-     * Default constructor for test class CoreFunctionsCoTest
18
-     */
19
-    public CoreFunctionsCoTest()
20
-    {
21
-    }
22
-
23
-    /**
24
-     * Sets up the test fixture.
25
-     *
26
-     * Called before every test case method.
27
-     */
28
-    @Before
29
-    public void setUp()
30
-    {
31
-    }
32
-
33
-    /**
34
-     * Tears down the test fixture.
35
-     *
36
-     * Called after every test case method.
37
-     */
38
-    @After
39
-    public void tearDown()
40
-    {
41
-    }
42
-}

+ 0
- 42
CoreFunctionsTest.java 查看文件

@@ -1,42 +0,0 @@
1
-
2
-
3
-import static org.junit.Assert.*;
4
-import org.junit.After;
5
-import org.junit.Before;
6
-import org.junit.Test;
7
-
8
-/**
9
- * The test class CoreFunctionsTest.
10
- *
11
- * @author  (your name)
12
- * @version (a version number or a date)
13
- */
14
-public class CoreFunctionsTest
15
-{
16
-    /**
17
-     * Default constructor for test class CoreFunctionsTest
18
-     */
19
-    public CoreFunctionsTest()
20
-    {
21
-    }
22
-
23
-    /**
24
-     * Sets up the test fixture.
25
-     *
26
-     * Called before every test case method.
27
-     */
28
-    @Before
29
-    public void setUp()
30
-    {
31
-    }
32
-
33
-    /**
34
-     * Tears down the test fixture.
35
-     *
36
-     * Called after every test case method.
37
-     */
38
-    @After
39
-    public void tearDown()
40
-    {
41
-    }
42
-}

+ 57
- 0
DiplayMode.java 查看文件

@@ -0,0 +1,57 @@
1
+
2
+/**
3
+ * Write a description of class DiplayMode here.
4
+ *
5
+ * @author (your name)
6
+ * @version (a version number or a date)
7
+ */
8
+import java.util.Scanner;
9
+public class DiplayMode
10
+{
11
+
12
+    private String currentMode = "decimal";
13
+    private double userInput;
14
+
15
+    public void setResult(double result){
16
+        userInput = result;
17
+    }
18
+    
19
+    public String enterMode(){
20
+        Console.println("Enter mode: decimal, binary, octal, hexadecimal");
21
+        Scanner scanner = new Scanner(System.in);
22
+        String modeInput = scanner.nextLine();
23
+        return modeInput;
24
+        
25
+    }
26
+
27
+    public void switchDisplayMode(String mode){
28
+        this.currentMode = mode;
29
+        String value = convertNumber(this.currentMode);
30
+        System.out.println(value);
31
+    }
32
+
33
+    public void switchDisplayMode()
34
+    {  
35
+        String[] modes = {"decimal", "binary", "octal", "hexadecimal"};
36
+        currentMode = modes[0];
37
+        String value = convertNumber(currentMode);
38
+        System.out.println(value);
39
+
40
+    }
41
+
42
+    public String convertNumber(String command){
43
+        String value = "";
44
+        if (command.equalsIgnoreCase("decimal")){
45
+            value = Double.toString(userInput);
46
+        } else if (command.equalsIgnoreCase("binary")){
47
+            value = Integer.toBinaryString((int)userInput);
48
+        } else if (command.equalsIgnoreCase("octal")){
49
+            value = Integer.toOctalString((int)userInput);
50
+        } else if (command.equalsIgnoreCase("hexadecimal")){
51
+            value = Double.toHexString(userInput);
52
+        }
53
+        return value;
54
+    }
55
+
56
+}
57
+

+ 15
- 0
MainApplication.java 查看文件

@@ -0,0 +1,15 @@
1
+
2
+/**
3
+ * Created by Roy Mpanju on 5/29/18.
4
+ */
5
+public class MainApplication {
6
+    //Operations Operations = new Operations();
7
+    public static void main(String[] args) {
8
+
9
+        Console.println("Welcome to my calculator!");
10
+        Console.println("for HELP press ?");
11
+        Operations.runCommand();
12
+
13
+    }
14
+
15
+}

+ 34
- 0
Memory.java 查看文件

@@ -0,0 +1,34 @@
1
+
2
+/**
3
+ * Write a description of class Memory here.
4
+ *
5
+ * @author (Roy Mpanju)
6
+ * @version (a version number or a date)
7
+ */
8
+public class Memory extends Operations
9
+{
10
+    Double numberInMemory = 0.0;
11
+    
12
+    /**
13
+     * An example of a method - replace this comment with your own
14
+     *
15
+     * @param  y  a sample parameter for a method
16
+     * @return    the sum of x and y
17
+     */
18
+    public Double storeInMemory(Double currentDisplay)
19
+    {
20
+        // put your code here
21
+        numberInMemory = currentDisplay;
22
+        return numberInMemory;
23
+    }
24
+    
25
+    public Double clearMemory(){
26
+        return numberInMemory = 0.0;
27
+    }
28
+    
29
+    public Double retrieveFromMemory(){
30
+        return numberInMemory;
31
+    }
32
+    
33
+    //public String 
34
+}

+ 144
- 0
Operations.java 查看文件

@@ -0,0 +1,144 @@
1
+
2
+/**
3
+ * Write a description of class Operations here.
4
+ *
5
+ * @author (your name)
6
+ * @version (a version number or a date)
7
+ */
8
+import java.util.Scanner;
9
+public class Operations
10
+{
11
+    /**
12
+     * prompting a user for a command solving for that command
13
+     * 
14
+     */
15
+    public static void printHelp(){
16
+        System.out.println("\n? | + | - | * | / |");
17
+        System.out.println("^ | sqrt | exp | inverse |");
18
+        System.out.println("cos | sine | tan | cos-1 | sin-1 | m+ | m- | MRC");
19
+        System.out.println("log | ln | ex |");
20
+        System.out.println("to clear display enter clrDisplay\n");
21
+    }
22
+
23
+    public static Double runCommand()
24
+    {
25
+        // put your code here
26
+
27
+        Scanner input = new Scanner(System.in);
28
+        Double result = 0.0;
29
+        //String userInput = scanner.nextLine();
30
+        scienticFunctions ScientificFunctions = new scienticFunctions();
31
+        Memory memory = new Memory();
32
+        DiplayMode displayMode = new DiplayMode();
33
+        bonusFunctions bonusFunctions = new bonusFunctions();
34
+        // Calculator calc = new ....
35
+        while (true) {
36
+            System.out.print("Enter a command: ");
37
+            String command = input.next();
38
+            if (command.equalsIgnoreCase("exit"))  {
39
+                System.out.print("Thanks for calculating with us!");
40
+                break;
41
+            }
42
+            else if (command.equalsIgnoreCase("sine"))  {
43
+                if (result != 0){
44
+                    result = ScientificFunctions.sine(result);
45
+                }
46
+                else{
47
+                    result = ScientificFunctions.sine(Console.getDoubleInput("Enter number"));
48
+                }
49
+                Console.printResult(result);
50
+            }
51
+            else if (command.equalsIgnoreCase("cos"))  {
52
+                if (result != 0){
53
+                    result = ScientificFunctions.cosine(result);
54
+                }
55
+                else{
56
+                    result = ScientificFunctions.cosine(Console.getDoubleInput("Enter number"));
57
+                }
58
+                Console.printResult(result);
59
+            }
60
+            else if (command.equalsIgnoreCase("tan"))  {
61
+                if (result != 0){
62
+                    result = ScientificFunctions.tangent(result);
63
+                }
64
+                else{
65
+                    result = ScientificFunctions.tangent(Console.getDoubleInput("Enter number"));
66
+                }
67
+                Console.printResult(result);
68
+            }
69
+            else if (command.equalsIgnoreCase("cos-1"))  {
70
+                if (result != 0){
71
+                    result = ScientificFunctions.inverseCosine(result);
72
+                }
73
+                else{
74
+                    result = ScientificFunctions.inverseCosine(Console.getDoubleInput("Enter number"));
75
+                }
76
+                Console.printResult(result);
77
+            }
78
+            else if (command.equalsIgnoreCase("sin-1"))  {
79
+                if (result != 0){
80
+                    result = ScientificFunctions.inverseSine(result);
81
+                }
82
+                else{
83
+                    result = ScientificFunctions.inverseSine(Console.getDoubleInput("Enter number"));
84
+                }
85
+                Console.printResult(result);
86
+            }
87
+            else if (command.equalsIgnoreCase("tan-1"))  {
88
+                if (result != 0){
89
+                    result = ScientificFunctions.inverseTangent(result);
90
+                }
91
+                else{
92
+                    result = ScientificFunctions.inverseTangent(Console.getDoubleInput("Enter number"));
93
+                }
94
+                Console.printResult(result);
95
+            }
96
+            else if(command.equalsIgnoreCase("M+")){
97
+                memory.storeInMemory(result);
98
+                Console.printResult(result);
99
+            }
100
+
101
+            else if (command.equalsIgnoreCase("M-")){
102
+                Console.printResult(memory.clearMemory());
103
+            }
104
+
105
+            else if (command.equalsIgnoreCase("MRC")){
106
+                Console.printResult(memory.retrieveFromMemory());
107
+            }
108
+
109
+            else if (command.equalsIgnoreCase("switchmode")){
110
+                displayMode.setResult(result);
111
+                String mode = displayMode.enterMode();
112
+                //System.out.println(mode);
113
+                displayMode.switchDisplayMode(mode);
114
+
115
+            }
116
+            else if (command.equalsIgnoreCase("log")){
117
+                Console.printResult(bonusFunctions.LogBaseTenOfAnumber(result));
118
+            }
119
+            else if (command.equalsIgnoreCase("ln")){
120
+                Console.printResult(bonusFunctions.naturalLogLn(result));
121
+            }
122
+            else if (command.equalsIgnoreCase("ex")){
123
+                Console.printResult(bonusFunctions.exponential(result));
124
+            }
125
+            else if(command.equalsIgnoreCase("?")){
126
+                printHelp();
127
+            }
128
+            else if(command.equalsIgnoreCase("clrDisplay")){
129
+                result = 0.0;
130
+            }
131
+            else{
132
+                Console.println("Invalid command please press ? for help");
133
+            }
134
+            //firstNumber = result;
135
+            // and on and on
136
+        }
137
+        return result;
138
+
139
+    }
140
+
141
+    //Add CommentCollapse 
142
+
143
+}
144
+

+ 33
- 0
bonusFunctions.java 查看文件

@@ -0,0 +1,33 @@
1
+
2
+/**
3
+ * Write a description of class bonusFunctions here.
4
+ *
5
+ * @author (your name)
6
+ * @version (a version number or a date)
7
+ */
8
+public class bonusFunctions
9
+{
10
+    /**
11
+     * An example of a method - replace this comment with your own
12
+     *
13
+     * @param  y  a sample parameter for a method
14
+     * @return    the sum of x and y
15
+     */
16
+    public Double naturalLogLn(Double x)
17
+    {
18
+        // put your code here
19
+        return Math.log(x);
20
+    }
21
+    
22
+    public Double LogBaseTenOfAnumber(Double x)
23
+    {
24
+        // put your code here
25
+        return Math.log10(x);
26
+    }
27
+    
28
+    public Double exponential(Double x)
29
+    {
30
+        // put your code here
31
+        return Math.exp(x);
32
+    }
33
+}

+ 58
- 0
bonusFunctionsTest.java 查看文件

@@ -0,0 +1,58 @@
1
+
2
+
3
+import org.junit.Assert;
4
+import org.junit.After;
5
+import org.junit.Before;
6
+import org.junit.Test;
7
+
8
+/**
9
+ * The test class bonusFunctionsTest.
10
+ *
11
+ * @author  (your name)
12
+ * @version (a version number or a date)
13
+ */
14
+public class bonusFunctionsTest
15
+{
16
+    private bonusFunctions bonusFunctions;
17
+    @Before
18
+    public void setUp(){
19
+        bonusFunctions = new bonusFunctions();
20
+    }
21
+
22
+    @Test
23
+    public void naturalLogLnTest(){
24
+        // :Given
25
+        Double expected = 0.0;
26
+
27
+        // :When
28
+        Double actual = bonusFunctions.naturalLogLn(1.0);
29
+
30
+        // :Then
31
+        Assert.assertEquals(expected, actual);
32
+    }
33
+    
34
+    @Test
35
+    public void LogBaseTenOfAnumberTest(){
36
+        // :Given
37
+        Double expected = 1.0;
38
+
39
+        // :When
40
+        Double actual = bonusFunctions.LogBaseTenOfAnumber(10.0);
41
+
42
+        // :Then
43
+        Assert.assertEquals(expected, actual);
44
+    }
45
+    
46
+    @Test
47
+    public void exponentialTest(){
48
+        // :Given
49
+        Double expected = 2.7182818285;
50
+
51
+        // :When
52
+        Double actual = bonusFunctions.exponential(1.0);
53
+
54
+        // :Then
55
+        Assert.assertEquals(expected, actual);
56
+    }
57
+    
58
+}

Display.java → calculatorCoreFunctions.java 查看文件

@@ -1,22 +1,24 @@
1 1
 
2 2
 /**
3
- * Write a description of class Display here.
3
+ * Write a description of class calculatorCoreFunctions here.
4 4
  *
5 5
  * @author (your name)
6 6
  * @version (a version number or a date)
7 7
  */
8
-public class Display
8
+public class calculatorCoreFunctions
9 9
 {
10 10
     // instance variables - replace the example below with your own
11 11
     private int x;
12
+    
12 13
 
13 14
     /**
14
-     * Constructor for objects of class Display
15
+     * Constructor for objects of class calculatorCoreFunctions
15 16
      */
16
-    public Display()
17
+    public calculatorCoreFunctions()
17 18
     {
18 19
         // initialise instance variables
19
-        x = 0;
20
+        x = 5;
21
+        //y= 0;
20 22
     }
21 23
 
22 24
     /**
@@ -25,7 +27,7 @@ public class Display
25 27
      * @param  y  a sample parameter for a method
26 28
      * @return    the sum of x and y
27 29
      */
28
-    public int sampleMethod(int y)
30
+    public int add(int y)
29 31
     {
30 32
         // put your code here
31 33
         return x + y;

+ 20
- 0
doc/allclasses-frame.html 查看文件

@@ -0,0 +1,20 @@
1
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2
+<!-- NewPage -->
3
+<html lang="en">
4
+<head>
5
+<!-- Generated by javadoc (1.8.0_144) on Sat May 26 10:54:11 EDT 2018 -->
6
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
7
+<title>All Classes</title>
8
+<meta name="date" content="2018-05-26">
9
+<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
10
+<script type="text/javascript" src="script.js"></script>
11
+</head>
12
+<body>
13
+<h1 class="bar">All&nbsp;Classes</h1>
14
+<div class="indexContainer">
15
+<ul>
16
+<li><a href="scienticFunctions.html" title="class in &lt;Unnamed&gt;" target="classFrame">scienticFunctions</a></li>
17
+</ul>
18
+</div>
19
+</body>
20
+</html>

+ 20
- 0
doc/allclasses-noframe.html 查看文件

@@ -0,0 +1,20 @@
1
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2
+<!-- NewPage -->
3
+<html lang="en">
4
+<head>
5
+<!-- Generated by javadoc (1.8.0_144) on Sat May 26 10:54:11 EDT 2018 -->
6
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
7
+<title>All Classes</title>
8
+<meta name="date" content="2018-05-26">
9
+<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
10
+<script type="text/javascript" src="script.js"></script>
11
+</head>
12
+<body>
13
+<h1 class="bar">All&nbsp;Classes</h1>
14
+<div class="indexContainer">
15
+<ul>
16
+<li><a href="scienticFunctions.html" title="class in &lt;Unnamed&gt;">scienticFunctions</a></li>
17
+</ul>
18
+</div>
19
+</body>
20
+</html>

+ 31
- 0
doc/constant-values.html 查看文件

@@ -0,0 +1,31 @@
1
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2
+<!-- NewPage -->
3
+<html lang="en">
4
+<head>
5
+<!-- Generated by javadoc (1.8.0_144) on Sat May 26 10:54:11 EDT 2018 -->
6
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
7
+<title>Constant Field Values</title>
8
+<meta name="date" content="2018-05-26">
9
+<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
10
+<script type="text/javascript" src="script.js"></script>
11
+</head>
12
+<body>
13
+<script type="text/javascript"><!--
14
+    try {
15
+        if (location.href.indexOf('is-external=true') == -1) {
16
+            parent.document.title="Constant Field Values";
17
+        }
18
+    }
19
+    catch(err) {
20
+    }
21
+//-->
22
+</script>
23
+<noscript>
24
+<div>JavaScript is disabled on your browser.</div>
25
+</noscript>
26
+<div class="header">
27
+<h1 title="Constant Field Values" class="title">Constant Field Values</h1>
28
+<h2 title="Contents">Contents</h2>
29
+</div>
30
+</body>
31
+</html>

+ 73
- 0
doc/index.html 查看文件

@@ -0,0 +1,73 @@
1
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
2
+<!-- NewPage -->
3
+<html lang="en">
4
+<head>
5
+<!-- Generated by javadoc (1.8.0_144) on Sat May 26 10:54:11 EDT 2018 -->
6
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
7
+<title>Generated Documentation (Untitled)</title>
8
+<script type="text/javascript">
9
+    tmpTargetPage = "" + window.location.search;
10
+    if (tmpTargetPage != "" && tmpTargetPage != "undefined")
11
+        tmpTargetPage = tmpTargetPage.substring(1);
12
+    if (tmpTargetPage.indexOf(":") != -1 || (tmpTargetPage != "" && !validURL(tmpTargetPage)))
13
+        tmpTargetPage = "undefined";
14
+    targetPage = tmpTargetPage;
15
+    function validURL(url) {
16
+        try {
17
+            url = decodeURIComponent(url);
18
+        }
19
+        catch (error) {
20
+            return false;
21
+        }
22
+        var pos = url.indexOf(".html");
23
+        if (pos == -1 || pos != url.length - 5)
24
+            return false;
25
+        var allowNumber = false;
26
+        var allowSep = false;
27
+        var seenDot = false;
28
+        for (var i = 0; i < url.length - 5; i++) {
29
+            var ch = url.charAt(i);
30
+            if ('a' <= ch && ch <= 'z' ||
31
+                    'A' <= ch && ch <= 'Z' ||
32
+                    ch == '$' ||
33
+                    ch == '_' ||
34
+                    ch.charCodeAt(0) > 127) {
35
+                allowNumber = true;
36
+                allowSep = true;
37
+            } else if ('0' <= ch && ch <= '9'
38
+                    || ch == '-') {
39
+                if (!allowNumber)
40
+                     return false;
41
+            } else if (ch == '/' || ch == '.') {
42
+                if (!allowSep)
43
+                    return false;
44
+                allowNumber = false;
45
+                allowSep = false;
46
+                if (ch == '.')
47
+                     seenDot = true;
48
+                if (ch == '/' && seenDot)
49
+                     return false;
50
+            } else {
51
+                return false;
52
+            }
53
+        }
54
+        return true;
55
+    }
56
+    function loadFrames() {
57
+        if (targetPage != "" && targetPage != "undefined")
58
+             top.classFrame.location = top.targetPage;
59
+    }
60
+</script>
61
+</head>
62
+<frameset cols="20%,80%" title="Documentation frame" onload="top.loadFrames()">
63
+<frame src="allclasses-frame.html" name="packageFrame" title="All classes and interfaces (except non-static nested types)">
64
+<frame src="scienticFunctions.html" name="classFrame" title="Package, class and interface descriptions" scrolling="yes">
65
+<noframes>
66
+<noscript>
67
+<div>JavaScript is disabled on your browser.</div>
68
+</noscript>
69
+<h2>Frame Alert</h2>
70
+<p>This document is designed to be viewed using the frames feature. If you see this message, you are using a non-frame-capable web client. Link to <a href="scienticFunctions.html">Non-frame version</a>.</p>
71
+</noframes>
72
+</frameset>
73
+</html>

+ 37
- 0
doc/logfile.txt 查看文件

@@ -0,0 +1,37 @@
1
+Class documentation
2
+<---- javadoc command: ---->
3
+/Applications/BlueJ.app/Contents/JDK/Home/bin/javadoc
4
+-author
5
+-version
6
+-nodeprecated
7
+-package
8
+-Xdoclint:none
9
+-noindex
10
+-notree
11
+-nohelp
12
+-nonavbar
13
+-source
14
+1.8
15
+-classpath
16
+/Applications/BlueJ.app/Contents/Resources/Java/bluejcore.jar:/Applications/BlueJ.app/Contents/Resources/Java/junit-4.11.jar:/Applications/BlueJ.app/Contents/Resources/Java/hamcrest-core-1.3.jar:/Applications/BlueJ.app/Contents/Resources/Java/lang-stride.jar:/Applications/BlueJ.app/Contents/Resources/Java/userlib/pi4j-core.jar:/Applications/BlueJ.app/Contents/Resources/Java/userlib/pi4j-gpio-extension.jar:/Applications/BlueJ.app/Contents/Resources/Java/userlib/pi4j-service.jar:/Applications/BlueJ.app/Contents/Resources/Java/userlib/pi4j-device.jar:/Users/roym/firstLab/ZCW-MacroLabs-OOP-ScientificCalculator
17
+-d
18
+/Users/roym/firstLab/ZCW-MacroLabs-OOP-ScientificCalculator/doc
19
+-encoding
20
+UTF-8
21
+-charset
22
+UTF-8
23
+/Users/roym/firstLab/ZCW-MacroLabs-OOP-ScientificCalculator/scienticFunctions.java
24
+<---- end of javadoc command ---->
25
+Loading source file /Users/roym/firstLab/ZCW-MacroLabs-OOP-ScientificCalculator/scienticFunctions.java...
26
+Constructing Javadoc information...
27
+Standard Doclet version 1.8.0_144
28
+Building tree for all the packages and classes...
29
+Generating /Users/roym/firstLab/ZCW-MacroLabs-OOP-ScientificCalculator/doc/scienticFunctions.html...
30
+Generating /Users/roym/firstLab/ZCW-MacroLabs-OOP-ScientificCalculator/doc/package-frame.html...
31
+Generating /Users/roym/firstLab/ZCW-MacroLabs-OOP-ScientificCalculator/doc/package-summary.html...
32
+Generating /Users/roym/firstLab/ZCW-MacroLabs-OOP-ScientificCalculator/doc/constant-values.html...
33
+Building index for all the packages and classes...
34
+Building index for all classes...
35
+Generating /Users/roym/firstLab/ZCW-MacroLabs-OOP-ScientificCalculator/doc/allclasses-frame.html...
36
+Generating /Users/roym/firstLab/ZCW-MacroLabs-OOP-ScientificCalculator/doc/allclasses-noframe.html...
37
+Generating /Users/roym/firstLab/ZCW-MacroLabs-OOP-ScientificCalculator/doc/index.html...

+ 21
- 0
doc/package-frame.html 查看文件

@@ -0,0 +1,21 @@
1
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2
+<!-- NewPage -->
3
+<html lang="en">
4
+<head>
5
+<!-- Generated by javadoc (1.8.0_144) on Sat May 26 10:54:11 EDT 2018 -->
6
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
7
+<title>&lt;Unnamed&gt;</title>
8
+<meta name="date" content="2018-05-26">
9
+<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
10
+<script type="text/javascript" src="script.js"></script>
11
+</head>
12
+<body>
13
+<h1 class="bar"><a href="package-summary.html" target="classFrame">&lt;Unnamed&gt;</a></h1>
14
+<div class="indexContainer">
15
+<h2 title="Classes">Classes</h2>
16
+<ul title="Classes">
17
+<li><a href="scienticFunctions.html" title="class in &lt;Unnamed&gt;" target="classFrame">scienticFunctions</a></li>
18
+</ul>
19
+</div>
20
+</body>
21
+</html>

+ 1
- 0
doc/package-list 查看文件

@@ -0,0 +1 @@
1
+

+ 38
- 0
doc/package-summary.html 查看文件

@@ -0,0 +1,38 @@
1
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2
+<!-- NewPage -->
3
+<html lang="en">
4
+<head>
5
+<!-- Generated by javadoc (1.8.0_144) on Sat May 26 10:54:11 EDT 2018 -->
6
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
7
+<meta name="date" content="2018-05-26">
8
+<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
9
+<script type="text/javascript" src="script.js"></script>
10
+</head>
11
+<body>
12
+<noscript>
13
+<div>JavaScript is disabled on your browser.</div>
14
+</noscript>
15
+<div class="header">
16
+<h1 title="Package" class="title">Package&nbsp;&lt;Unnamed&gt;</h1>
17
+</div>
18
+<div class="contentContainer">
19
+<ul class="blockList">
20
+<li class="blockList">
21
+<table class="typeSummary" border="0" cellpadding="3" cellspacing="0" summary="Class Summary table, listing classes, and an explanation">
22
+<caption><span>Class Summary</span><span class="tabEnd">&nbsp;</span></caption>
23
+<tr>
24
+<th class="colFirst" scope="col">Class</th>
25
+<th class="colLast" scope="col">Description</th>
26
+</tr>
27
+<tbody>
28
+<tr class="altColor">
29
+<td class="colFirst"><a href="scienticFunctions.html" title="class in &lt;Unnamed&gt;">scienticFunctions</a></td>
30
+<td class="colLast">&nbsp;</td>
31
+</tr>
32
+</tbody>
33
+</table>
34
+</li>
35
+</ul>
36
+</div>
37
+</body>
38
+</html>

+ 178
- 0
doc/scienticFunctions.html 查看文件

@@ -0,0 +1,178 @@
1
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2
+<!-- NewPage -->
3
+<html lang="en">
4
+<head>
5
+<!-- Generated by javadoc (1.8.0_144) on Sat May 26 10:54:11 EDT 2018 -->
6
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
7
+<title>scienticFunctions</title>
8
+<meta name="date" content="2018-05-26">
9
+<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
10
+<script type="text/javascript" src="script.js"></script>
11
+</head>
12
+<body>
13
+<script type="text/javascript"><!--
14
+    try {
15
+        if (location.href.indexOf('is-external=true') == -1) {
16
+            parent.document.title="scienticFunctions";
17
+        }
18
+    }
19
+    catch(err) {
20
+    }
21
+//-->
22
+var methods = {"i0":9,"i1":10};
23
+var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
24
+var altColor = "altColor";
25
+var rowColor = "rowColor";
26
+var tableTab = "tableTab";
27
+var activeTableTab = "activeTableTab";
28
+</script>
29
+<noscript>
30
+<div>JavaScript is disabled on your browser.</div>
31
+</noscript>
32
+<!-- ======== START OF CLASS DATA ======== -->
33
+<div class="header">
34
+<h2 title="Class scienticFunctions" class="title">Class scienticFunctions</h2>
35
+</div>
36
+<div class="contentContainer">
37
+<ul class="inheritance">
38
+<li>java.lang.Object</li>
39
+<li>
40
+<ul class="inheritance">
41
+<li>scienticFunctions</li>
42
+</ul>
43
+</li>
44
+</ul>
45
+<div class="description">
46
+<ul class="blockList">
47
+<li class="blockList">
48
+<hr>
49
+<br>
50
+<pre>public class <span class="typeNameLabel">scienticFunctions</span>
51
+extends java.lang.Object</pre>
52
+</li>
53
+</ul>
54
+</div>
55
+<div class="summary">
56
+<ul class="blockList">
57
+<li class="blockList">
58
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
59
+<ul class="blockList">
60
+<li class="blockList"><a name="constructor.summary">
61
+<!--   -->
62
+</a>
63
+<h3>Constructor Summary</h3>
64
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
65
+<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
66
+<tr>
67
+<th class="colOne" scope="col">Constructor and Description</th>
68
+</tr>
69
+<tr class="altColor">
70
+<td class="colOne"><code><span class="memberNameLink"><a href="scienticFunctions.html#scienticFunctions--">scienticFunctions</a></span>()</code>&nbsp;</td>
71
+</tr>
72
+</table>
73
+</li>
74
+</ul>
75
+<!-- ========== METHOD SUMMARY =========== -->
76
+<ul class="blockList">
77
+<li class="blockList"><a name="method.summary">
78
+<!--   -->
79
+</a>
80
+<h3>Method Summary</h3>
81
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
82
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
83
+<tr>
84
+<th class="colFirst" scope="col">Modifier and Type</th>
85
+<th class="colLast" scope="col">Method and Description</th>
86
+</tr>
87
+<tr id="i0" class="altColor">
88
+<td class="colFirst"><code>static double</code></td>
89
+<td class="colLast"><code><span class="memberNameLink"><a href="scienticFunctions.html#cosine-double-">cosine</a></span>(double&nbsp;y)</code>
90
+<div class="block">A method - find the cosine of a given number</div>
91
+</td>
92
+</tr>
93
+<tr id="i1" class="rowColor">
94
+<td class="colFirst"><code>double</code></td>
95
+<td class="colLast"><code><span class="memberNameLink"><a href="scienticFunctions.html#sine-double-">sine</a></span>(double&nbsp;y)</code>
96
+<div class="block">A method - find the sine of a given number by converting it to radians</div>
97
+</td>
98
+</tr>
99
+</table>
100
+<ul class="blockList">
101
+<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
102
+<!--   -->
103
+</a>
104
+<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
105
+<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
106
+</ul>
107
+</li>
108
+</ul>
109
+</li>
110
+</ul>
111
+</div>
112
+<div class="details">
113
+<ul class="blockList">
114
+<li class="blockList">
115
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
116
+<ul class="blockList">
117
+<li class="blockList"><a name="constructor.detail">
118
+<!--   -->
119
+</a>
120
+<h3>Constructor Detail</h3>
121
+<a name="scienticFunctions--">
122
+<!--   -->
123
+</a>
124
+<ul class="blockListLast">
125
+<li class="blockList">
126
+<h4>scienticFunctions</h4>
127
+<pre>public&nbsp;scienticFunctions()</pre>
128
+</li>
129
+</ul>
130
+</li>
131
+</ul>
132
+<!-- ============ METHOD DETAIL ========== -->
133
+<ul class="blockList">
134
+<li class="blockList"><a name="method.detail">
135
+<!--   -->
136
+</a>
137
+<h3>Method Detail</h3>
138
+<a name="cosine-double-">
139
+<!--   -->
140
+</a>
141
+<ul class="blockList">
142
+<li class="blockList">
143
+<h4>cosine</h4>
144
+<pre>public static&nbsp;double&nbsp;cosine(double&nbsp;y)</pre>
145
+<div class="block">A method - find the cosine of a given number</div>
146
+<dl>
147
+<dt><span class="paramLabel">Parameters:</span></dt>
148
+<dd><code>y</code> - a sample parameter for a method</dd>
149
+<dt><span class="returnLabel">Returns:</span></dt>
150
+<dd>the cosine of y</dd>
151
+</dl>
152
+</li>
153
+</ul>
154
+<a name="sine-double-">
155
+<!--   -->
156
+</a>
157
+<ul class="blockListLast">
158
+<li class="blockList">
159
+<h4>sine</h4>
160
+<pre>public&nbsp;double&nbsp;sine(double&nbsp;y)</pre>
161
+<div class="block">A method - find the sine of a given number by converting it to radians</div>
162
+<dl>
163
+<dt><span class="paramLabel">Parameters:</span></dt>
164
+<dd><code>y</code> - a sample parameter for a method</dd>
165
+<dt><span class="returnLabel">Returns:</span></dt>
166
+<dd>the sine of y</dd>
167
+</dl>
168
+</li>
169
+</ul>
170
+</li>
171
+</ul>
172
+</li>
173
+</ul>
174
+</div>
175
+</div>
176
+<!-- ========= END OF CLASS DATA ========= -->
177
+</body>
178
+</html>

+ 30
- 0
doc/script.js 查看文件

@@ -0,0 +1,30 @@
1
+function show(type)
2
+{
3
+    count = 0;
4
+    for (var key in methods) {
5
+        var row = document.getElementById(key);
6
+        if ((methods[key] &  type) != 0) {
7
+            row.style.display = '';
8
+            row.className = (count++ % 2) ? rowColor : altColor;
9
+        }
10
+        else
11
+            row.style.display = 'none';
12
+    }
13
+    updateTabs(type);
14
+}
15
+
16
+function updateTabs(type)
17
+{
18
+    for (var value in tabs) {
19
+        var sNode = document.getElementById(tabs[value][0]);
20
+        var spanNode = sNode.firstChild;
21
+        if (value == type) {
22
+            sNode.className = activeTableTab;
23
+            spanNode.innerHTML = tabs[value][1];
24
+        }
25
+        else {
26
+            sNode.className = tableTab;
27
+            spanNode.innerHTML = "<a href=\"javascript:show("+ value + ");\">" + tabs[value][1] + "</a>";
28
+        }
29
+    }
30
+}

+ 574
- 0
doc/stylesheet.css 查看文件

@@ -0,0 +1,574 @@
1
+/* Javadoc style sheet */
2
+/*
3
+Overall document style
4
+*/
5
+
6
+@import url('resources/fonts/dejavu.css');
7
+
8
+body {
9
+    background-color:#ffffff;
10
+    color:#353833;
11
+    font-family:'DejaVu Sans', Arial, Helvetica, sans-serif;
12
+    font-size:14px;
13
+    margin:0;
14
+}
15
+a:link, a:visited {
16
+    text-decoration:none;
17
+    color:#4A6782;
18
+}
19
+a:hover, a:focus {
20
+    text-decoration:none;
21
+    color:#bb7a2a;
22
+}
23
+a:active {
24
+    text-decoration:none;
25
+    color:#4A6782;
26
+}
27
+a[name] {
28
+    color:#353833;
29
+}
30
+a[name]:hover {
31
+    text-decoration:none;
32
+    color:#353833;
33
+}
34
+pre {
35
+    font-family:'DejaVu Sans Mono', monospace;
36
+    font-size:14px;
37
+}
38
+h1 {
39
+    font-size:20px;
40
+}
41
+h2 {
42
+    font-size:18px;
43
+}
44
+h3 {
45
+    font-size:16px;
46
+    font-style:italic;
47
+}
48
+h4 {
49
+    font-size:13px;
50
+}
51
+h5 {
52
+    font-size:12px;
53
+}
54
+h6 {
55
+    font-size:11px;
56
+}
57
+ul {
58
+    list-style-type:disc;
59
+}
60
+code, tt {
61
+    font-family:'DejaVu Sans Mono', monospace;
62
+    font-size:14px;
63
+    padding-top:4px;
64
+    margin-top:8px;
65
+    line-height:1.4em;
66
+}
67
+dt code {
68
+    font-family:'DejaVu Sans Mono', monospace;
69
+    font-size:14px;
70
+    padding-top:4px;
71
+}
72
+table tr td dt code {
73
+    font-family:'DejaVu Sans Mono', monospace;
74
+    font-size:14px;
75
+    vertical-align:top;
76
+    padding-top:4px;
77
+}
78
+sup {
79
+    font-size:8px;
80
+}
81
+/*
82
+Document title and Copyright styles
83
+*/
84
+.clear {
85
+    clear:both;
86
+    height:0px;
87
+    overflow:hidden;
88
+}
89
+.aboutLanguage {
90
+    float:right;
91
+    padding:0px 21px;
92
+    font-size:11px;
93
+    z-index:200;
94
+    margin-top:-9px;
95
+}
96
+.legalCopy {
97
+    margin-left:.5em;
98
+}
99
+.bar a, .bar a:link, .bar a:visited, .bar a:active {
100
+    color:#FFFFFF;
101
+    text-decoration:none;
102
+}
103
+.bar a:hover, .bar a:focus {
104
+    color:#bb7a2a;
105
+}
106
+.tab {
107
+    background-color:#0066FF;
108
+    color:#ffffff;
109
+    padding:8px;
110
+    width:5em;
111
+    font-weight:bold;
112
+}
113
+/*
114
+Navigation bar styles
115
+*/
116
+.bar {
117
+    background-color:#4D7A97;
118
+    color:#FFFFFF;
119
+    padding:.8em .5em .4em .8em;
120
+    height:auto;/*height:1.8em;*/
121
+    font-size:11px;
122
+    margin:0;
123
+}
124
+.topNav {
125
+    background-color:#4D7A97;
126
+    color:#FFFFFF;
127
+    float:left;
128
+    padding:0;
129
+    width:100%;
130
+    clear:right;
131
+    height:2.8em;
132
+    padding-top:10px;
133
+    overflow:hidden;
134
+    font-size:12px; 
135
+}
136
+.bottomNav {
137
+    margin-top:10px;
138
+    background-color:#4D7A97;
139
+    color:#FFFFFF;
140
+    float:left;
141
+    padding:0;
142
+    width:100%;
143
+    clear:right;
144
+    height:2.8em;
145
+    padding-top:10px;
146
+    overflow:hidden;
147
+    font-size:12px;
148
+}
149
+.subNav {
150
+    background-color:#dee3e9;
151
+    float:left;
152
+    width:100%;
153
+    overflow:hidden;
154
+    font-size:12px;
155
+}
156
+.subNav div {
157
+    clear:left;
158
+    float:left;
159
+    padding:0 0 5px 6px;
160
+    text-transform:uppercase;
161
+}
162
+ul.navList, ul.subNavList {
163
+    float:left;
164
+    margin:0 25px 0 0;
165
+    padding:0;
166
+}
167
+ul.navList li{
168
+    list-style:none;
169
+    float:left;
170
+    padding: 5px 6px;
171
+    text-transform:uppercase;
172
+}
173
+ul.subNavList li{
174
+    list-style:none;
175
+    float:left;
176
+}
177
+.topNav a:link, .topNav a:active, .topNav a:visited, .bottomNav a:link, .bottomNav a:active, .bottomNav a:visited {
178
+    color:#FFFFFF;
179
+    text-decoration:none;
180
+    text-transform:uppercase;
181
+}
182
+.topNav a:hover, .bottomNav a:hover {
183
+    text-decoration:none;
184
+    color:#bb7a2a;
185
+    text-transform:uppercase;
186
+}
187
+.navBarCell1Rev {
188
+    background-color:#F8981D;
189
+    color:#253441;
190
+    margin: auto 5px;
191
+}
192
+.skipNav {
193
+    position:absolute;
194
+    top:auto;
195
+    left:-9999px;
196
+    overflow:hidden;
197
+}
198
+/*
199
+Page header and footer styles
200
+*/
201
+.header, .footer {
202
+    clear:both;
203
+    margin:0 20px;
204
+    padding:5px 0 0 0;
205
+}
206
+.indexHeader {
207
+    margin:10px;
208
+    position:relative;
209
+}
210
+.indexHeader span{
211
+    margin-right:15px;
212
+}
213
+.indexHeader h1 {
214
+    font-size:13px;
215
+}
216
+.title {
217
+    color:#2c4557;
218
+    margin:10px 0;
219
+}
220
+.subTitle {
221
+    margin:5px 0 0 0;
222
+}
223
+.header ul {
224
+    margin:0 0 15px 0;
225
+    padding:0;
226
+}
227
+.footer ul {
228
+    margin:20px 0 5px 0;
229
+}
230
+.header ul li, .footer ul li {
231
+    list-style:none;
232
+    font-size:13px;
233
+}
234
+/*
235
+Heading styles
236
+*/
237
+div.details ul.blockList ul.blockList ul.blockList li.blockList h4, div.details ul.blockList ul.blockList ul.blockListLast li.blockList h4 {
238
+    background-color:#dee3e9;
239
+    border:1px solid #d0d9e0;
240
+    margin:0 0 6px -8px;
241
+    padding:7px 5px;
242
+}
243
+ul.blockList ul.blockList ul.blockList li.blockList h3 {
244
+    background-color:#dee3e9;
245
+    border:1px solid #d0d9e0;
246
+    margin:0 0 6px -8px;
247
+    padding:7px 5px;
248
+}
249
+ul.blockList ul.blockList li.blockList h3 {
250
+    padding:0;
251
+    margin:15px 0;
252
+}
253
+ul.blockList li.blockList h2 {
254
+    padding:0px 0 20px 0;
255
+}
256
+/*
257
+Page layout container styles
258
+*/
259
+.contentContainer, .sourceContainer, .classUseContainer, .serializedFormContainer, .constantValuesContainer {
260
+    clear:both;
261
+    padding:10px 20px;
262
+    position:relative;
263
+}
264
+.indexContainer {
265
+    margin:10px;
266
+    position:relative;
267
+    font-size:12px;
268
+}
269
+.indexContainer h2 {
270
+    font-size:13px;
271
+    padding:0 0 3px 0;
272
+}
273
+.indexContainer ul {
274
+    margin:0;
275
+    padding:0;
276
+}
277
+.indexContainer ul li {
278
+    list-style:none;
279
+    padding-top:2px;
280
+}
281
+.contentContainer .description dl dt, .contentContainer .details dl dt, .serializedFormContainer dl dt {
282
+    font-size:12px;
283
+    font-weight:bold;
284
+    margin:10px 0 0 0;
285
+    color:#4E4E4E;
286
+}
287
+.contentContainer .description dl dd, .contentContainer .details dl dd, .serializedFormContainer dl dd {
288
+    margin:5px 0 10px 0px;
289
+    font-size:14px;
290
+    font-family:'DejaVu Sans Mono',monospace;
291
+}
292
+.serializedFormContainer dl.nameValue dt {
293
+    margin-left:1px;
294
+    font-size:1.1em;
295
+    display:inline;
296
+    font-weight:bold;
297
+}
298
+.serializedFormContainer dl.nameValue dd {
299
+    margin:0 0 0 1px;
300
+    font-size:1.1em;
301
+    display:inline;
302
+}
303
+/*
304
+List styles
305
+*/
306
+ul.horizontal li {
307
+    display:inline;
308
+    font-size:0.9em;
309
+}
310
+ul.inheritance {
311
+    margin:0;
312
+    padding:0;
313
+}
314
+ul.inheritance li {
315
+    display:inline;
316
+    list-style:none;
317
+}
318
+ul.inheritance li ul.inheritance {
319
+    margin-left:15px;
320
+    padding-left:15px;
321
+    padding-top:1px;
322
+}
323
+ul.blockList, ul.blockListLast {
324
+    margin:10px 0 10px 0;
325
+    padding:0;
326
+}
327
+ul.blockList li.blockList, ul.blockListLast li.blockList {
328
+    list-style:none;
329
+    margin-bottom:15px;
330
+    line-height:1.4;
331
+}
332
+ul.blockList ul.blockList li.blockList, ul.blockList ul.blockListLast li.blockList {
333
+    padding:0px 20px 5px 10px;
334
+    border:1px solid #ededed; 
335
+    background-color:#f8f8f8;
336
+}
337
+ul.blockList ul.blockList ul.blockList li.blockList, ul.blockList ul.blockList ul.blockListLast li.blockList {
338
+    padding:0 0 5px 8px;
339
+    background-color:#ffffff;
340
+    border:none;
341
+}
342
+ul.blockList ul.blockList ul.blockList ul.blockList li.blockList {
343
+    margin-left:0;
344
+    padding-left:0;
345
+    padding-bottom:15px;
346
+    border:none;
347
+}
348
+ul.blockList ul.blockList ul.blockList ul.blockList li.blockListLast {
349
+    list-style:none;
350
+    border-bottom:none;
351
+    padding-bottom:0;
352
+}
353
+table tr td dl, table tr td dl dt, table tr td dl dd {
354
+    margin-top:0;
355
+    margin-bottom:1px;
356
+}
357
+/*
358
+Table styles
359
+*/
360
+.overviewSummary, .memberSummary, .typeSummary, .useSummary, .constantsSummary, .deprecatedSummary {
361
+    width:100%;
362
+    border-left:1px solid #EEE; 
363
+    border-right:1px solid #EEE; 
364
+    border-bottom:1px solid #EEE; 
365
+}
366
+.overviewSummary, .memberSummary  {
367
+    padding:0px;
368
+}
369
+.overviewSummary caption, .memberSummary caption, .typeSummary caption,
370
+.useSummary caption, .constantsSummary caption, .deprecatedSummary caption {
371
+    position:relative;
372
+    text-align:left;
373
+    background-repeat:no-repeat;
374
+    color:#253441;
375
+    font-weight:bold;
376
+    clear:none;
377
+    overflow:hidden;
378
+    padding:0px;
379
+    padding-top:10px;
380
+    padding-left:1px;
381
+    margin:0px;
382
+    white-space:pre;
383
+}
384
+.overviewSummary caption a:link, .memberSummary caption a:link, .typeSummary caption a:link,
385
+.useSummary caption a:link, .constantsSummary caption a:link, .deprecatedSummary caption a:link,
386
+.overviewSummary caption a:hover, .memberSummary caption a:hover, .typeSummary caption a:hover,
387
+.useSummary caption a:hover, .constantsSummary caption a:hover, .deprecatedSummary caption a:hover,
388
+.overviewSummary caption a:active, .memberSummary caption a:active, .typeSummary caption a:active,
389
+.useSummary caption a:active, .constantsSummary caption a:active, .deprecatedSummary caption a:active,
390
+.overviewSummary caption a:visited, .memberSummary caption a:visited, .typeSummary caption a:visited,
391
+.useSummary caption a:visited, .constantsSummary caption a:visited, .deprecatedSummary caption a:visited {
392
+    color:#FFFFFF;
393
+}
394
+.overviewSummary caption span, .memberSummary caption span, .typeSummary caption span,
395
+.useSummary caption span, .constantsSummary caption span, .deprecatedSummary caption span {
396
+    white-space:nowrap;
397
+    padding-top:5px;
398
+    padding-left:12px;
399
+    padding-right:12px;
400
+    padding-bottom:7px;
401
+    display:inline-block;
402
+    float:left;
403
+    background-color:#F8981D;
404
+    border: none;
405
+    height:16px;
406
+}
407
+.memberSummary caption span.activeTableTab span {
408
+    white-space:nowrap;
409
+    padding-top:5px;
410
+    padding-left:12px;
411
+    padding-right:12px;
412
+    margin-right:3px;
413
+    display:inline-block;
414
+    float:left;
415
+    background-color:#F8981D;
416
+    height:16px;
417
+}
418
+.memberSummary caption span.tableTab span {
419
+    white-space:nowrap;
420
+    padding-top:5px;
421
+    padding-left:12px;
422
+    padding-right:12px;
423
+    margin-right:3px;
424
+    display:inline-block;
425
+    float:left;
426
+    background-color:#4D7A97;
427
+    height:16px;
428
+}
429
+.memberSummary caption span.tableTab, .memberSummary caption span.activeTableTab {
430
+    padding-top:0px;
431
+    padding-left:0px;
432
+    padding-right:0px;
433
+    background-image:none;
434
+    float:none;
435
+    display:inline;
436
+}
437
+.overviewSummary .tabEnd, .memberSummary .tabEnd, .typeSummary .tabEnd,
438
+.useSummary .tabEnd, .constantsSummary .tabEnd, .deprecatedSummary .tabEnd {
439
+    display:none;
440
+    width:5px;
441
+    position:relative;
442
+    float:left;
443
+    background-color:#F8981D;
444
+}
445
+.memberSummary .activeTableTab .tabEnd {
446
+    display:none;
447
+    width:5px;
448
+    margin-right:3px;
449
+    position:relative; 
450
+    float:left;
451
+    background-color:#F8981D;
452
+}
453
+.memberSummary .tableTab .tabEnd {
454
+    display:none;
455
+    width:5px;
456
+    margin-right:3px;
457
+    position:relative;
458
+    background-color:#4D7A97;
459
+    float:left;
460
+
461
+}
462
+.overviewSummary td, .memberSummary td, .typeSummary td,
463
+.useSummary td, .constantsSummary td, .deprecatedSummary td {
464
+    text-align:left;
465
+    padding:0px 0px 12px 10px;
466
+}
467
+th.colOne, th.colFirst, th.colLast, .useSummary th, .constantsSummary th,
468
+td.colOne, td.colFirst, td.colLast, .useSummary td, .constantsSummary td{
469
+    vertical-align:top;
470
+    padding-right:0px;
471
+    padding-top:8px;
472
+    padding-bottom:3px;
473
+}
474
+th.colFirst, th.colLast, th.colOne, .constantsSummary th {
475
+    background:#dee3e9;
476
+    text-align:left;
477
+    padding:8px 3px 3px 7px;
478
+}
479
+td.colFirst, th.colFirst {
480
+    white-space:nowrap;
481
+    font-size:13px;
482
+}
483
+td.colLast, th.colLast {
484
+    font-size:13px;
485
+}
486
+td.colOne, th.colOne {
487
+    font-size:13px;
488
+}
489
+.overviewSummary td.colFirst, .overviewSummary th.colFirst,
490
+.useSummary td.colFirst, .useSummary th.colFirst,
491
+.overviewSummary td.colOne, .overviewSummary th.colOne,
492
+.memberSummary td.colFirst, .memberSummary th.colFirst,
493
+.memberSummary td.colOne, .memberSummary th.colOne,
494
+.typeSummary td.colFirst{
495
+    width:25%;
496
+    vertical-align:top;
497
+}
498
+td.colOne a:link, td.colOne a:active, td.colOne a:visited, td.colOne a:hover, td.colFirst a:link, td.colFirst a:active, td.colFirst a:visited, td.colFirst a:hover, td.colLast a:link, td.colLast a:active, td.colLast a:visited, td.colLast a:hover, .constantValuesContainer td a:link, .constantValuesContainer td a:active, .constantValuesContainer td a:visited, .constantValuesContainer td a:hover {
499
+    font-weight:bold;
500
+}
501
+.tableSubHeadingColor {
502
+    background-color:#EEEEFF;
503
+}
504
+.altColor {
505
+    background-color:#FFFFFF;
506
+}
507
+.rowColor {
508
+    background-color:#EEEEEF;
509
+}
510
+/*
511
+Content styles
512
+*/
513
+.description pre {
514
+    margin-top:0;
515
+}
516
+.deprecatedContent {
517
+    margin:0;
518
+    padding:10px 0;
519
+}
520
+.docSummary {
521
+    padding:0;
522
+}
523
+
524
+ul.blockList ul.blockList ul.blockList li.blockList h3 {
525
+    font-style:normal;
526
+}
527
+
528
+div.block {
529
+    font-size:14px;
530
+    font-family:'DejaVu Serif', Georgia, "Times New Roman", Times, serif;
531
+}
532
+
533
+td.colLast div {
534
+    padding-top:0px;
535
+}
536
+
537
+
538
+td.colLast a {
539
+    padding-bottom:3px;
540
+}
541
+/*
542
+Formatting effect styles
543
+*/
544
+.sourceLineNo {
545
+    color:green;
546
+    padding:0 30px 0 0;
547
+}
548
+h1.hidden {
549
+    visibility:hidden;
550
+    overflow:hidden;
551
+    font-size:10px;
552
+}
553
+.block {
554
+    display:block;
555
+    margin:3px 10px 2px 0px;
556
+    color:#474747;
557
+}
558
+.deprecatedLabel, .descfrmTypeLabel, .memberNameLabel, .memberNameLink,
559
+.overrideSpecifyLabel, .packageHierarchyLabel, .paramLabel, .returnLabel,
560
+.seeLabel, .simpleTagLabel, .throwsLabel, .typeNameLabel, .typeNameLink {
561
+    font-weight:bold;
562
+}
563
+.deprecationComment, .emphasizedPhrase, .interfaceName {
564
+    font-style:italic;
565
+}
566
+
567
+div.block div.block span.deprecationComment, div.block div.block span.emphasizedPhrase,
568
+div.block div.block span.interfaceName {
569
+    font-style:normal;
570
+}
571
+
572
+div.contentContainer ul.blockList li.blockList h2{
573
+    padding-bottom:0px;
574
+}

+ 166
- 23
package.bluej 查看文件

@@ -1,23 +1,59 @@
1 1
 #BlueJ package file
2
-dependency1.from=MainApplication
3
-dependency1.to=Console
2
+dependency1.from=bonusFunctionsTest
3
+dependency1.to=bonusFunctions
4 4
 dependency1.type=UsesDependency
5
-editor.fx.0.height=722
5
+dependency10.from=Operations
6
+dependency10.to=Console
7
+dependency10.type=UsesDependency
8
+dependency11.from=ConsoleTest
9
+dependency11.to=Console
10
+dependency11.type=UsesDependency
11
+dependency12.from=MainApplication
12
+dependency12.to=Console
13
+dependency12.type=UsesDependency
14
+dependency13.from=MainApplication
15
+dependency13.to=Operations
16
+dependency13.type=UsesDependency
17
+dependency2.from=scienticFunctionsTest
18
+dependency2.to=scienticFunctions
19
+dependency2.type=UsesDependency
20
+dependency3.from=DiplayMode
21
+dependency3.to=Console
22
+dependency3.type=UsesDependency
23
+dependency4.from=Calculator
24
+dependency4.to=CoreFunctions
25
+dependency4.type=UsesDependency
26
+dependency5.from=Calculator
27
+dependency5.to=Operations
28
+dependency5.type=UsesDependency
29
+dependency6.from=Operations
30
+dependency6.to=scienticFunctions
31
+dependency6.type=UsesDependency
32
+dependency7.from=Operations
33
+dependency7.to=Memory
34
+dependency7.type=UsesDependency
35
+dependency8.from=Operations
36
+dependency8.to=DiplayMode
37
+dependency8.type=UsesDependency
38
+dependency9.from=Operations
39
+dependency9.to=bonusFunctions
40
+dependency9.type=UsesDependency
41
+editor.fx.0.height=717
6 42
 editor.fx.0.width=800
7
-editor.fx.0.x=640
43
+editor.fx.0.x=371
8 44
 editor.fx.0.y=23
9
-objectbench.height=214
10
-objectbench.width=595
11
-package.divider.horizontal=0.6
12
-package.divider.vertical=0.6847360912981455
13
-package.editor.height=473
14
-package.editor.width=493
45
+objectbench.height=200
46
+objectbench.width=552
47
+package.divider.horizontal=0.6004296455424275
48
+package.divider.vertical=0.6854103343465046
49
+package.editor.height=444
50
+package.editor.width=825
15 51
 package.editor.x=35
16
-package.editor.y=60
17
-package.frame.height=759
18
-package.frame.width=619
19
-package.numDependencies=1
20
-package.numTargets=2
52
+package.editor.y=23
53
+package.frame.height=716
54
+package.frame.width=951
55
+package.numDependencies=13
56
+package.numTargets=17
21 57
 package.showExtends=true
22 58
 package.showUses=true
23 59
 project.charset=UTF-8
@@ -27,16 +63,123 @@ readme.width=47
27 63
 readme.x=10
28 64
 readme.y=10
29 65
 target1.height=50
30
-target1.name=Console
66
+target1.name=CoreFunctionsCo
31 67
 target1.showInterface=false
32 68
 target1.type=ClassTarget
33
-target1.width=80
34
-target1.x=80
35
-target1.y=200
69
+target1.width=130
70
+target1.x=10
71
+target1.y=120
72
+target10.height=50
73
+target10.name=CoreFunctionsTest
74
+target10.showInterface=false
75
+target10.type=ClassTarget
76
+target10.width=140
77
+target10.x=10
78
+target10.y=240
79
+target11.height=50
80
+target11.name=Calculator
81
+target11.showInterface=false
82
+target11.type=ClassTarget
83
+target11.width=90
84
+target11.x=160
85
+target11.y=260
86
+target12.height=50
87
+target12.name=Console
88
+target12.showInterface=false
89
+target12.type=ClassTarget
90
+target12.width=80
91
+target12.x=240
92
+target12.y=200
93
+target13.association=bonusFunctionsTest
94
+target13.height=50
95
+target13.name=bonusFunctions
96
+target13.showInterface=false
97
+target13.type=ClassTarget
98
+target13.width=120
99
+target13.x=500
100
+target13.y=330
101
+target14.height=50
102
+target14.name=Operations
103
+target14.showInterface=false
104
+target14.type=ClassTarget
105
+target14.width=90
106
+target14.x=380
107
+target14.y=370
108
+target15.height=50
109
+target15.name=ConsoleTest
110
+target15.showInterface=false
111
+target15.type=ClassTarget
112
+target15.width=100
113
+target15.x=10
114
+target15.y=300
115
+target16.height=50
116
+target16.name=MainApplication
117
+target16.showInterface=false
118
+target16.type=ClassTarget
119
+target16.width=120
120
+target16.x=140
121
+target16.y=60
122
+target17.height=50
123
+target17.name=Display
124
+target17.showInterface=false
125
+target17.type=ClassTarget
126
+target17.width=80
127
+target17.x=160
128
+target17.y=320
36 129
 target2.height=50
37
-target2.name=MainApplication
130
+target2.name=CoreFunctionsCoTest
38 131
 target2.showInterface=false
39 132
 target2.type=ClassTarget
40
-target2.width=120
41
-target2.x=70
42
-target2.y=70
133
+target2.width=160
134
+target2.x=10
135
+target2.y=180
136
+target3.height=50
137
+target3.name=Memory
138
+target3.showInterface=false
139
+target3.type=ClassTarget
140
+target3.width=80
141
+target3.x=640
142
+target3.y=370
143
+target4.height=50
144
+target4.name=bonusFunctionsTest
145
+target4.showInterface=false
146
+target4.type=UnitTestTargetJunit4
147
+target4.width=120
148
+target4.x=530
149
+target4.y=300
150
+target5.association=scienticFunctionsTest
151
+target5.height=50
152
+target5.name=scienticFunctions
153
+target5.showInterface=false
154
+target5.type=ClassTarget
155
+target5.width=130
156
+target5.x=500
157
+target5.y=230
158
+target6.height=50
159
+target6.name=scienticFunctionsTest
160
+target6.showInterface=false
161
+target6.type=UnitTestTargetJunit4
162
+target6.width=130
163
+target6.x=530
164
+target6.y=200
165
+target7.height=50
166
+target7.name=calculatorCoreFunctions
167
+target7.showInterface=false
168
+target7.type=ClassTarget
169
+target7.width=180
170
+target7.x=460
171
+target7.y=150
172
+target8.height=50
173
+target8.name=CoreFunctions
174
+target8.showInterface=false
175
+target8.type=ClassTarget
176
+target8.width=120
177
+target8.x=150
178
+target8.y=120
179
+target9.height=50
180
+target9.name=DiplayMode
181
+target9.showInterface=false
182
+target9.type=ClassTarget
183
+target9.width=100
184
+target9.x=50
185
+target9.y=360

+ 41
- 0
scienticFunctions.java 查看文件

@@ -0,0 +1,41 @@
1
+
2
+/**
3
+ * Write a description of class scienticFunctions here.
4
+ *
5
+ * @author (Roy Mpanju)
6
+ * @version (a version number or a date)
7
+ */
8
+
9
+import java.lang.*;
10
+public class scienticFunctions
11
+{
12
+    /**
13
+     * A method - find solve for the trignometry functions of a given number by converting it to radians
14
+     *
15
+     * @param  y  a sample parameter for a method
16
+     * @return    the sine of y
17
+     */
18
+    public static double sine(double y){
19
+        return Math.sin(Math.toRadians(y));
20
+    }
21
+    
22
+    public static double cosine(double y){
23
+        return Math.cos(Math.toRadians(y));
24
+    }
25
+
26
+    public double tangent(double y){
27
+        return Math.tan(Math.toRadians(y));
28
+    }
29
+
30
+    public double inverseCosine(double y){
31
+        return Math.acos(y) * 180/Math.PI;
32
+    }
33
+
34
+    public double inverseSine(double y){
35
+        return (Math.asin(y))* 180/Math.PI;
36
+    }
37
+
38
+    public double inverseTangent(double y){
39
+        return (Math.atan(y))*180/Math.PI;
40
+    }
41
+}

+ 94
- 0
scienticFunctionsTest.java 查看文件

@@ -0,0 +1,94 @@
1
+
2
+
3
+import org.junit.Assert;
4
+import org.junit.After;
5
+import org.junit.Before;
6
+import org.junit.Test;
7
+
8
+/**
9
+ * The test class scienticFunctionsTest.
10
+ *
11
+ * @author  (your name)
12
+ * @version (a version number or a date)
13
+ */
14
+public class scienticFunctionsTest
15
+{
16
+    private scienticFunctions scientificFunctions;
17
+    
18
+    @Before
19
+    public void setUp(){
20
+        scientificFunctions = new scienticFunctions();
21
+    }
22
+
23
+    @Test
24
+    public void sineTest(){
25
+        // :Given
26
+        Double expected = 0.0;
27
+
28
+        // :When
29
+        Double actual = scientificFunctions.sine(0.0);
30
+
31
+        // :Then
32
+        Assert.assertEquals(expected, actual);
33
+    }
34
+    
35
+    @Test
36
+    public void cosineTest(){
37
+        // :Given
38
+        Double expected = 1.0;
39
+
40
+        // :When
41
+        Double actual = scientificFunctions.cosine(0);
42
+
43
+        // :Then
44
+        Assert.assertEquals(expected, actual);
45
+    }
46
+    
47
+    @Test
48
+    public void tangentTest(){
49
+        // :Given
50
+        Double expected = 0.0;
51
+
52
+        // :When
53
+        Double actual = scientificFunctions.tangent(0);
54
+
55
+        // :Then
56
+        Assert.assertEquals(expected, actual);
57
+    }
58
+    
59
+    @Test
60
+    public void inverseTangentTest(){
61
+        // :Given
62
+        Double expected = 45.0;
63
+
64
+        // :When
65
+        Double actual = scientificFunctions.inverseTangent(1);
66
+
67
+        // :Then
68
+        Assert.assertEquals(expected, actual);
69
+    }
70
+    
71
+    @Test
72
+    public void inverseCosineTest(){
73
+        // :Given
74
+        Double expected = 90.0;
75
+
76
+        // :When
77
+        Double actual = scientificFunctions.inverseCosine(0.0);
78
+
79
+        // :Then
80
+        Assert.assertEquals(expected, actual);
81
+    }
82
+    
83
+    @Test
84
+    public void inverseSineTest(){
85
+        // :Given
86
+        Double expected = 0.0;
87
+
88
+        // :When
89
+        Double actual = scientificFunctions.inverseSine(0.0);
90
+
91
+        // :Then
92
+        Assert.assertEquals(expected, actual);
93
+    }
94
+}