Initial data commit
This commit is contained in:
parent
72d218235f
commit
f23f22d71c
199087 changed files with 3378941 additions and 0 deletions
37
Task/Vector/FreeBASIC/vector.basic
Normal file
37
Task/Vector/FreeBASIC/vector.basic
Normal file
|
|
@ -0,0 +1,37 @@
|
|||
' FB 1.05.0 Win64
|
||||
|
||||
Type Vector
|
||||
As Double x, y
|
||||
Declare Operator Cast() As String
|
||||
End Type
|
||||
|
||||
Operator Vector.Cast() As String
|
||||
Return "[" + Str(x) + ", " + Str(y) + "]"
|
||||
End Operator
|
||||
|
||||
Operator + (vec1 As Vector, vec2 As Vector) As Vector
|
||||
Return Type<Vector>(vec1.x + vec2.x, vec1.y + vec2.y)
|
||||
End Operator
|
||||
|
||||
Operator - (vec1 As Vector, vec2 As Vector) As Vector
|
||||
Return Type<Vector>(vec1.x - vec2.x, vec1.y - vec2.y)
|
||||
End Operator
|
||||
|
||||
Operator * (vec As Vector, scalar As Double) As Vector
|
||||
Return Type<Vector>(vec.x * scalar, vec.y * scalar)
|
||||
End Operator
|
||||
|
||||
Operator / (vec As Vector, scalar As Double) As Vector
|
||||
' No need to check for division by zero as we're using Doubles
|
||||
Return Type<Vector>(vec.x / scalar, vec.y / scalar)
|
||||
End Operator
|
||||
|
||||
Dim v1 As Vector = (5, 7)
|
||||
Dim v2 As Vector = (2, 3)
|
||||
Print v1; " + "; v2; " = "; v1 + v2
|
||||
Print v1; " - "; v2; " = "; v1 - v2
|
||||
Print v1; " * "; 11; " = "; v1 * 11.0
|
||||
Print v1; " / "; 2; " = "; v1 / 2.0
|
||||
Print
|
||||
Print "Press any key to quit"
|
||||
Sleep
|
||||
Loading…
Add table
Add a link
Reference in a new issue