Maison >Java >javaDidacticiel >Comment vérifier si trois points sont colinéaires en Java ?

Comment vérifier si trois points sont colinéaires en Java ?

WBOY
WBOYavant
2023-09-05 18:41:051141parcourir

Comment vérifier si trois points sont colinéaires en Java ?

Si trois points sont situés sur une droite, ils sont dits colinéaires. Si les points ne sont pas sur la même droite, ils ne sont pas colinéaires.

Cela signifie que si trois points (x1, y1), (x2, y2), (x3, y3) sont sur la même droite, ils sont colinéaires.

Parmi eux, x1, y1, x2, y2, x3, y3 sont des points sur l'axe des x et l'axe des y, (x1, y1), (x2, y2), (x3, y3) sont les coordonnées.

Mathématiquement, il existe deux façons de déterminer si trois points sont colinéaires.

Trouvez l'aire d'un triangle en utilisant les points, si l'aire du triangle est nulle, alors les trois points sont colinéaires.

Formula to find area of triangle = 0。5 * [x1 * (y2 - y3) + x2 * (y3 - y1) + x3 * (y1 - y2)]

En constatant que les pentes de deux points sont égales, vous pouvez déterminer que les trois points sont colinéaires.

Formula to find slope =
Slope of (x1, y1), (x2, y2)
m1 = (y2-y1) / (x2-x1)
Slope of (x2, y2), (x3, y3)
m2 = (y3-y2) / (x3-x2)

Dans cet article, nous apprendrons comment vérifier si trois points sont colinéaires à l'aide du langage de programmation Java.

Montrez quelques exemples

La traduction de

Instance-1

est :

Instance-1

Supposons que les coordonnées données soient (1,2), (3,4), (5,6)

Les trois points sont colinéaires car ils se trouvent sur la même ligne droite.

La traduction chinoise de

Instance-2

est :

Instance-2

Supposons que les coordonnées données soient (1,1), (1,4), (1,6)

Les trois points sont colinéaires car ils se trouvent sur la même ligne droite.

La traduction chinoise de

Instance-3

est :

Instance-3

Supposons que les coordonnées données soient (1,1), (2,4), (4,6)

Les trois points ne sont pas colinéaires car ils ne sont pas sur la même ligne droite.

Algorithme

  • Étape 1 - Obtenez trois points via la saisie de l'utilisateur ou l'initialisation.

  • Étape 2 - En utilisant l'une des formules ci-dessus, vérifiez si l'aire du triangle est nulle ou si la pente est la même puis imprimez les trois points sont colinéaires sinon les trois points ne sont pas colinéaires.

  • Étape 3 − Imprimez les résultats.

Méthodes multiples

Nous proposons des solutions de différentes manières.

  • En trouvant l'aire d'un triangle.

  • En trouvant la pente.

Regardons le programme et ses résultats un par un

Méthode 1 : En trouvant l'aire d'un triangle

Dans cette méthode, le programme initialisera trois points. Utilisez ensuite la formule pour calculer l’aire du triangle. Si l'aire est nulle, alors trois points sont imprimés de manière colinéaire.

Exemple

public class Main{
   //main method
   public static void main(String args[]){
	
      //initialized first point
      double x1 = 1;
      double y1 = 2;
      System。out。println("First point: "+x1+", "+y1);
		
      //initialized second point
      double x2 = 3;
      double y2 = 4;
      System。out。println("Second point: "+x2+", "+y2);
		
      //initialized third point
      double x3 = 5;
      double y3 = 6;
      System。out。println("Third point: "+x3+", "+y3);
		
      //find triangle area by using formula
      double triangleArea = 0。5*(x1 * (y2 - y3) + x2 * (y3 - y1) + x3 * (y1 - y2));
      System。out。println("Area of triangle using three points ="+triangleArea);
      if (triangleArea == 0)
         System。out。println("Three points are collinear。");
      else
         System。out。println("Three points are not collinear。");
   }
}

Sortie

First point: 1。0, 2。0
Second pointe: 3。0, 4。0
Third pointe: 5。0, 6。0
Area of triangle using three points = 0。0
Three points are collinear。
.

Méthode 2 : Trouver la pente

Dans cette approche, trois points seront initialisés dans le programme. Calculez ensuite la pente de n'importe quelle paire de points et vérifiez si la pente est égale à la pente d'une autre paire de points en utilisant la formule de pente. Si les deux pentes sont égales, alors imprimez trois points colinéaires.

Exemple

public class Main{
   //main method
   public static void main(String args[]){
	
      //initialized first point
      double x1 = 1;
      double y1 = 2;
      System。out。println("First point: "+x1+", "+y1);

      //initialized second point
      double x2 = 3;
      double y2 = 4;
      System。out。println("Second point: "+x2+", "+y2);

      //initialized third point
      double x3 = 5;
      double y3 = 6;
      System。out。println("Third point: "+x3+", "+y3);

      //find slope of (x1, y1) , (x2, y2)
      double m1 = (y2-y1) / (x2-x1);

      //find slope of (x2, y2) , (x3, y3)
      double m2 = (y3-y2) / (x3-x2);
      System。out。println("Slope of first pair= " + m1);
      System。out。println("Slope of second pair= " + m2);
      if (m1 == m2)
         System。out。println("Three points are collinear。");
      else
         System。out。println("Three points are not collinear。");
   }
}

Sortie

First point: 1。0, 2。0
Second point: 3。0, 4。0
Third point: 5。0, 6。0
Slope of first pair= 1。0
Slope of second pair= 1。0
Three points are collinear。

Dans cet article, nous avons exploré comment vérifier si trois points sont colinéaires ou non en Java en utilisant différentes approches.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer