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

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

Summary

Details

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