CComplexNumber – A class for dealing with complex numbers

CComplexNumber – A class for dealing with complex numbers

Option Explicit'------------------------------------------' A class for dealing with complex numbers'------------------------------------------' The main propertiesPublic Real As DoublePublic Imaginary As Double' Initialize this complex number' (returns Me)Function Init(Real As Double, Imaginary As Double) As CComplexNumber    Me.Real = Real    Me.Imaginary = Imaginary    Set Init = MeEnd Function' Returns another complex number with given' real and imaginary partsFunction Complex(Real As Double, Imaginary As Double) As CComplexNumber    Set Complex = New CComplexNumber    Complex.Real = Real    Complex.Imaginary = ImaginaryEnd Function' Add a complex number to the current one' (returns Me)Function Add(other As CComplexNumber) As CComplexNumber    Real = Real + other.Real    Imaginary = Imaginary + other.Imaginary    Set Add = MeEnd Function' Add a complex number to the current one' (returns the result CComplexNumber)Function Add2(Real As Double, Imaginary As Double) As CComplexNumber    Set Add2 = New CComplexNumber    Add2.Real = Me.Real + Real    Add2.Imaginary = Me.Imaginary + ImaginaryEnd Function' Subtract a complex number from the current one' (returns the result CComplexNumber)Function Subtract2(Real As Double, Imaginary As Double) As CComplexNumber    Set Subtract2 = New CComplexNumber    Subtract2.Real = Me.Real - Real    Subtract2.Imaginary = Me.Imaginary - ImaginaryEnd Function' Multiple a complex number by the current one' (returns the result CComplexNumber)Function Multiply2(Real As Double, Imaginary As Double) As CComplexNumber    Set Multiply2 = New CComplexNumber    Multiply2.Real = (Me.Real * Real - Me.Imaginary * Imaginary)    Multiply2.Imaginary = Me.Real * Imaginary + Me.Imaginary * RealEnd Function' Divide the current number by another complex number' (returns the result CComplexNumber)Function Divide2(Real As Double, Imaginary As Double) As CComplexNumber    Set Divide2 = New CComplexNumber    Dim sum As Double    ' create the sum only once    sum = Real * Real + Imaginary * Imaginary    ' evaluate the real and imaginary parts    Divide2.Real = (Me.Real * Real + Me.Imaginary * Imaginary) / sum    Divide2.Imaginary = (Me.Imaginary * Real - Me.Real * Imaginary) / sumEnd Function' Return the textual description of a complex numberFunction Text() As String    If Imaginary = 0 Then        Text = LTrim$(Real)    ElseIf Real = 0 Then        Text = LTrim$(Imaginary) & "i"    ElseIf Imaginary > 0 Then        Text = LTrim$(Real) & "+" & LTrim$(Imaginary) & "i"    Else        Text = LTrim$(Real) & LTrim$(Imaginary) & "i"    End IfEnd Function

Share the Post:
XDR solutions

The Benefits of Using XDR Solutions

Cybercriminals constantly adapt their strategies, developing newer, more powerful, and intelligent ways to attack your network. Since security professionals must innovate as well, more conventional endpoint detection solutions have evolved

AI is revolutionizing fraud detection

How AI is Revolutionizing Fraud Detection

Artificial intelligence – commonly known as AI – means a form of technology with multiple uses. As a result, it has become extremely valuable to a number of businesses across

AI innovation

Companies Leading AI Innovation in 2023

Artificial intelligence (AI) has been transforming industries and revolutionizing business operations. AI’s potential to enhance efficiency and productivity has become crucial to many businesses. As we move into 2023, several

data fivetran pricing

Fivetran Pricing Explained

One of the biggest trends of the 21st century is the massive surge in analytics. Analytics is the process of utilizing data to drive future decision-making. With so much of

kubernetes logging

Kubernetes Logging: What You Need to Know

Kubernetes from Google is one of the most popular open-source and free container management solutions made to make managing and deploying applications easier. It has a solid architecture that makes

ransomware cyber attack

Why Is Ransomware Such a Major Threat?

One of the most significant cyber threats faced by modern organizations is a ransomware attack. Ransomware attacks have grown in both sophistication and frequency over the past few years, forcing

data dictionary

Tools You Need to Make a Data Dictionary

Data dictionaries are crucial for organizations of all sizes that deal with large amounts of data. they are centralized repositories of all the data in organizations, including metadata such as