Okay I have a problem I can't figure out. I have having to write a program that you input three numbers and the program tells you if it is Right triangle or not. I can't figure out the function that figures the three numbers. Can someone please help me.
Comments
:
:
:
For a start, you'll actually need 6 numbers, an x and y co-ordinate for each point. If you assume a is where the right angle is, you can say if b has the same x value and c has the same y value, or if c has the same x value and a has the same y value, it is right angled. Do the same thing if b is the right angle and if c is:
ax = 10
ay = 20
bx = 5
by = 20
cx = 10
dy = 30
If ax = bx Then
If ay = cy Then
ans = True
End If
ElseIf ax = cx Then
If ay = by Then
ans = True
End If
ElseIf bx = ax Then
If by = cy Then
ans = True
End If
ElseIf bx = cx Then
If by = ay Then
ans = True
End If
ElseIf cx = ax Then
If cy = by Then
ans = True
End If
ElseIf cx = bx Then
If cy = ay Then
ans = True
End If
Else
ans = False
End If
ans is True if it is a right angled triangle.
Though this code only works if the right angle is laying parallel to the x or y axis!
To actually get it to work in general, simply compare the gradients of every pair of sides to the triangle. If the product of any pair = -1 then the lines of the gradients are set to bi-sect where the right angle is, this is a proof for determining a right angle triangle.
: :
: :
: :
: For a start, you'll actually need 6 numbers, an x and y co-ordinate for each point. If you assume a is where the right angle is, you can say if b has the same x value and c has the same y value, or if c has the same x value and a has the same y value, it is right angled. Do the same thing if b is the right angle and if c is:
:
: ax = 10
: ay = 20
: bx = 5
: by = 20
: cx = 10
: dy = 30
:
: If ax = bx Then
: If ay = cy Then
: ans = True
: End If
: ElseIf ax = cx Then
: If ay = by Then
: ans = True
: End If
: ElseIf bx = ax Then
: If by = cy Then
: ans = True
: End If
: ElseIf bx = cx Then
: If by = ay Then
: ans = True
: End If
: ElseIf cx = ax Then
: If cy = by Then
: ans = True
: End If
: ElseIf cx = bx Then
: If cy = ay Then
: ans = True
: End If
: Else
: ans = False
: End If
:
: ans is True if it is a right angled triangle.
: Though this code only works if the right angle is laying parallel to the x or y axis!
:
: To actually get it to work in general, simply compare the gradients of every pair of sides to the triangle. If the product of any pair = -1 then the lines of the gradients are set to bi-sect where the right angle is, this is a proof for determining a right angle triangle.
:
??????
Ever heard of "Phytagoras"?
a + b = c sounds familiar?
If you just want to find out, if a triangle is right-angled, then you just have to check the above equation for all three possibilities (assuming a, b and c are the sides (Not the corners!) of your triangle. You have to calculate the length of each side through the x,y-Values of your corners, which is normal algebra).
if ((a + b = c) or (a + c = b) or (b + c = a))=False then
'I'm not a right-angled triangle
Else
'Yes, i'm a right-angled triangle
End if
------------------------------------------
Only stupidity of mankind and the universe
are infinite, but i'm not sure concerning
the universe. A. Einstein
: : :
: : :
: : :
: : For a start, you'll actually need 6 numbers, an x and y co-ordinate for each point. If you assume a is where the right angle is, you can say if b has the same x value and c has the same y value, or if c has the same x value and a has the same y value, it is right angled. Do the same thing if b is the right angle and if c is:
: :
: : ax = 10
: : ay = 20
: : bx = 5
: : by = 20
: : cx = 10
: : dy = 30
: :
: : If ax = bx Then
: : If ay = cy Then
: : ans = True
: : End If
: : ElseIf ax = cx Then
: : If ay = by Then
: : ans = True
: : End If
: : ElseIf bx = ax Then
: : If by = cy Then
: : ans = True
: : End If
: : ElseIf bx = cx Then
: : If by = ay Then
: : ans = True
: : End If
: : ElseIf cx = ax Then
: : If cy = by Then
: : ans = True
: : End If
: : ElseIf cx = bx Then
: : If cy = ay Then
: : ans = True
: : End If
: : Else
: : ans = False
: : End If
: :
: : ans is True if it is a right angled triangle.
: : Though this code only works if the right angle is laying parallel to the x or y axis!
: :
: : To actually get it to work in general, simply compare the gradients of every pair of sides to the triangle. If the product of any pair = -1 then the lines of the gradients are set to bi-sect where the right angle is, this is a proof for determining a right angle triangle.
: :
:
: ??????
: Ever heard of "Phytagoras"?
:
: a + b = c sounds familiar?
:
: If you just want to find out, if a triangle is right-angled, then you just have to check the above equation for all three possibilities (assuming a, b and c are the sides (Not the corners!) of your triangle. You have to calculate the length of each side through the x,y-Values of your corners, which is normal algebra).
:
[code]
if ((a^2 + b^2 = c^2) or (a^2 + c^2 = b^2) or (b^2 + c^2 = a^2))=False then
'I'm not a right-angled triangle
Else
'Yes, i'm a right-angled triangle
End if
[/code]
Although
a^2 is less accurate in VB or VB.Net than a*a
Regards,
Dr M.
[green] I can help you with your problem, lets break it into 3 steps.
1. Define the data types [/green]
[blue] Dim ShortSide, MediumSide, LongSide As String [/blue]
[green] 2. Ask the user for the variable values [/green]
[blue] ShortSide = InputBox("Enter The Short Side Length")
MediumSide = InputBox("Enter The Medium Side Length")
LongSide = InputBox("Enter The Long Side Length") [/blue]
[green] 3. Check whether the triangle is right angled and display result
[blue] If LongSide ^ 2 = ShortSide ^ 2 + MediumSide ^ 2 Then
MsgBox ("This triangle is right angled")
Else
MsgBox ("This triangle is not right angled")
End If [/blue]
Hope this helps you, any questions just ask me.