Byłem na tym od wielu godzin, próbując różnych metod patrząc na prawie każde pytanie. Być może mam to całkowicie błędne, ale czuję, że mam jego matematyki poprawne, ale bez względu na to, jakie dane wprowadzam, otrzymuję taki sam wynik. Mój kod jest gdzieś wyłączony i muszę go włączyć do północy.Ustalanie, czy punkt znajduje się w obrębie trójkąta
Wszystko to sprawia przyjemność: Znajdź, czy punkt znajduje się w obrębie kodu trójkąta. (Dla początkujących)
import java.util.Scanner;
public class PointsTriangle {
// checks if point entered is within the triangle
//given points of triangle are (0,0) (0,100) (200,0)
public static void main (String [] args) {
//obtain point (x,y) from user
System.out.print("Enter a point's x- and y-coordinates: ");
Scanner input = new Scanner(System.in);
double x = input.nextDouble();
double y = input.nextDouble();
//find area of triangle with given points
double ABC = ((0*(100-0 )+0*(0 -0)+200*(0-100))/2.0);
double PAB = ((x*(0 -100)+0*(100-y)+0 *(y- 0))/2.0);
double PBC = ((x*(100-0 )+0*(0 -y)+200*(y-100))/2.0);
double PAC = ((x*(0 -100)+0*(100-y)+200*(y- 0))/2.0);
boolean isInTriangle = PAB + PBC + PAC == ABC;
if (isInTriangle)
System.out.println("The point is in the triangle");
else
System.out.println("The point is not in the triangle");
}//end main
}//end PointsTriangle
To chyba warto wyprowadzania wartości uważasz odczytywane jako część debugowania ... – Floris