Enhanced ComplexNumber class VB.Net Exercise - Visual Basic Programming Course


Enhanced ComplexNumber class


Improve the "ComplexNumber" class, so that it overloads the operators + and - to add and subtract numbers.


Imports System
Class ComplexNumber
    Protected a, b As Double

    Public Sub New(ByVal realPart As Double, ByVal imaginaryPart As Double)
        a = realPart
        b = imaginaryPart
    End Sub

    Public Function GetReal() As Double
        Return a
    End Function

    Public Sub SetReal(ByVal a As Double)
        Me.a = a
    End Sub

    Public Function GetImaginary() As Double
        Return b
    End Function

    Public Sub SetImaginary(ByVal b As Double)
        Me.b = b
    End Sub

    Public Overloads Function ToString() As String
        Return "(" & a & "," & b & ")"
    End Function

    Public Function GetMagnitude() As Double
        Return Math.Sqrt((a * a) + (b * b))
    End Function

    Public Sub Add(ByVal c2 As ComplexNumber)
        a += c2.GetReal()
        b += c2.GetImaginary()
    End Sub
End Class

Class ComplexTest
    Private Shared Sub Main()
        Dim number As ComplexNumber = New ComplexNumber(5, 2)
        Console.WriteLine("Number is: " & number.ToString())
        Console.WriteLine("Number is: " & number.ToString())
        Console.Write("Magnitude is: ")
        Dim number2 As ComplexNumber = New ComplexNumber(-1, 1)
        Console.Write("After adding: ")
    End Sub
End Class

More VB.Net Exercises of OOP More On Classes

 Array of objects: table
Create a class named "Table". It must have a constructor, indicating the width and height of the board. It will have a method "ShowData" which will wr...
Create a class "House", with an attribute "area", a constructor that sets its value and a method "ShowData" to display "I am a house, my area is 200 m...
 Table + coffetable + array
Create a project named "Tables2", based on the "Tables" project. In it, create a class "CoffeeTable" that inherits from "Table". Its method "ShowDa...
Create a class "Encrypter" to encrypt and decrypt text. It will have a "Encrypt" method, which will receive a string and return another string. It ...
 Complex numbers
A complex number has two parts: the real part and the imaginary part. In a number such as a+bi (2-3i, for example) the real part would be "a" (2) and ...
 Table + coffetable + leg
Extend the example of the tables and the coffee tables, to add a class "Leg" with a method "ShowData", which will write "I am a leg" and then it will ...
Create the classes diagram and then, using Visual Studio, a project and the corresponding classes for a catalog utility: It will be able to store i...
 Random number
Create a class RandomNumber, with three static methods: - GetFloat will return a number between 0 and 1 using the following algorithm: seed = (s...
 Text to HTML
Create a class "TextToHTML", which must be able to convert several texts entered by the user into a HTML sequence, like this one: Hola Soy yo Ya ...
 Class ScreenText
Create a class ScreenText, to display a certain text in specified screen coordinates. It must have a constructor which will receive X, Y and the strin...
 3D point
Create a class "Point3D", to represent a point in 3-D space, with coordinates X, Y and Z. It must contain the following methods: MoveTo, which will...
 Catalog + Menu
Improve the Catalog program, so that "Main" displays a menu to allow entering new data of any kind, as well as displaying all the data stored....

Juan A. Ripoll - Systems Tutorials and Programming Courses © 2024 All rights reserved.  Legal Conditions.