Last modified by chrisby on 2024/03/03 17:01

From version 3.2
edited by chrisby
on 2024/03/03 14:50
Change comment: There is no comment for this version
To version 1.1
edited by chrisby
on 2024/03/03 14:40
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -1,59 +1,1 @@
1 -### Data Structure Style
2 -
3 - type Square struct {
4 - length float
5 - }
6 -
7 - type Circle struct {
8 - radius float
9 - }
10 -
11 - func Area(g GeometricObject) float {
12 - switch type(g):
13 - case Square:
14 - return g.length * g.length
15 - case Circle:
16 - return PI * g.radius * g.radius
17 - }
18 -
19 - func Circumference(g GeometricObject) float {
20 - switch type(g):
21 - case Square:
22 - return 4 * g.length
23 - case Circle:
24 - return 2 * PI * g.radius
25 - }
26 -
27 -#### Object-Oriented Style
28 -
29 - class Square {
30 - length float
31 -
32 - constructor(length float) {
33 - this.length = length
34 - }
35 -
36 - func Area() float {
37 - return this.length * this.length
38 - }
39 -
40 - func Circumference() float {
41 - return 4 * this.length
42 - }
43 - }
44 -
45 - class Circle {
46 - radius float
47 -
48 - constructor(radius float) {
49 - this.radius = radius
50 - }
51 -
52 - func Area() float {
53 - return PI * this.radius * this.radius
54 - }
55 -
56 - func Circumference() float {
57 - return 2 * PI * this.radius
58 - }
59 - }
1 +```