Complex Number : Complex Number « Data Type « VB.Net Tutorial

VB.Net Tutorial
1. Language Basics
2. Data Type
3. Operator
4. Statements
5. Date Time
6. Class Module
7. Development
8. Collections
9. Generics
10. Attributes
11. Event
12. Stream File
13. GUI
14. GUI Applications
15. 2D Graphics
16. I18N Internationlization
17. Reflection
18. Regular Expressions
19. Security
20. Socket Network
21. Thread
22. Windows
23. XML
24. Database ADO.net
25. Design Patterns
Microsoft Office Word 2007 Tutorial
Java
Java Tutorial
Java Source Code / Java Documentation
Java Open Source
Jar File Download
Java Articles
Java Products
Java by API
C# / C Sharp
C# / CSharp Tutorial
ASP.Net
JavaScript DHTML
JavaScript Tutorial
JavaScript Reference
HTML / CSS
HTML CSS Reference
C / ANSI-C
C Tutorial
C++
C++ Tutorial
PHP
Python
SQL Server / T-SQL
Oracle PL / SQL
Oracle PL/SQL Tutorial
PostgreSQL
SQL / MySQL
MySQL Tutorial
VB.Net
VB.Net Tutorial » Data Type » Complex Number 
2. 17. 2. Complex Number
 
 

Public Class Tester


    Public Shared Sub Main
        Dim result As New System.Text.StringBuilder
        Dim As ComplexNumber
        Dim As ComplexNumber
        Dim As ComplexNumber

        a = New ComplexNumber(34)
        b = New ComplexNumber(5, -2)
        c = a + b

        result.AppendLine("Complex Numbers")
        result.AppendLine("a = " & a.ToString())
        result.AppendLine("b = " & b.ToString())

        ' ----- Addition.
        c = a + b
        result.AppendLine("a + b = " & c.ToString())

        ' ----- Subtraction.
        c = a - b
        result.AppendLine("a - b = " & c.ToString())

        ' ----- Multiplication.
        c = a * b
        result.AppendLine("a * b = " & c.ToString())

        ' ----- Division.
        c = a / b
        result.AppendLine("a / b = " & c.ToString())

        ' ----- Addition as assignment.
        a += b
        result.AppendLine("a += b ... a = " & a.ToString())

        Console.WriteLine(result.ToString())

    End Sub

    
End Class

Structure ComplexNumber
    Public Real As Double
    Public Imaginary As Double

    Public Sub New(ByVal realPart As Double, ByVal imaginaryPart As Double)
        Me.Real = realPart
        Me.Imaginary = imaginaryPart
    End Sub

    Public Sub New(ByVal sourceNumber As ComplexNumber)
        Me.Real = sourceNumber.Real
        Me.Imaginary = sourceNumber.Imaginary
    End Sub

    Public Overrides Function ToString() As String
        Return Real & "+" & Imaginary & "i"
    End Function

    Public Shared Operator +(ByVal a As ComplexNumber, _
            ByVal b As ComplexNumberAs ComplexNumber
        Return New ComplexNumber(a.Real + b.Real, a.Imaginary + b.Imaginary)
    End Operator

    Public Shared Operator -(ByVal a As ComplexNumber, _
            ByVal b As ComplexNumberAs ComplexNumber
        Return New ComplexNumber(a.Real - b.Real, a.Imaginary - b.Imaginary)
    End Operator

    Public Shared Operator *(ByVal a As ComplexNumber, _
            ByVal b As ComplexNumberAs ComplexNumber
        Return New ComplexNumber(a.Real * b.Real - a.Imaginary * b.Imaginary, _
            a.Real * b.Imaginary + a.Imaginary * b.Real)
    End Operator

    Public Shared Operator /(ByVal a As ComplexNumber, _
            ByVal b As ComplexNumberAs ComplexNumber
        Return a * Reciprocal(b)
    End Operator

    Public Shared Function Reciprocal(ByVal a As ComplexNumberAs ComplexNumber
        Dim divisor As Double

        divisor = a.Real * a.Real + a.Imaginary * a.Imaginary
        If (divisor = 0.0#Then Throw New DivideByZeroException

        Return New ComplexNumber(a.Real / divisor, -a.Imaginary / divisor)
    End Function
End Structure

        
  
  




Complex Numbers
a = 3+4i
b = 5+-2i
a + b = 8+2i
a - b = -2+6i
a * b = 23+14i
a / b = 0.241379310344828+0.896551724137931i
a += b ... a = 8+2i


 
2. 17. Complex Number
2. 17. 1. Complex
2. 17. 2. Complex Number
w___w_w___.ja__va__2___s._co___m_ | Contact Us
Copyright 2003 - 08 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.