Rumah >Java >javaTutorial >Bagaimana untuk mengesahkan di Jawa sama ada diberi empat mata membentuk segi empat sama?
Segi empat sama ialah bentuk dua dimensi dengan empat sisi yang sama panjang. Sisi bertentangan segi empat sama adalah selari, keempat-empat sudut pedalaman adalah sudut tegak, dan pepenjuru adalah sama panjang. Dalam artikel ini kita akan mengkaji cara untuk mengesahkan sama ada empat mata yang diberikan membentuk segi empat sama.
Kita akan dapat segi empat sama dengan empat mata iaitu A,B,C,D seperti dalam gambar −
Kita perlu menyemak dari titik ini sama ada ia membentuk segi empat sama. Untuk menyemak ini, ia harus memenuhi syarat berikut −
Jarak antara titik A dan titik C, dan jarak antara titik B dan titik D iaitu "x" hendaklah sama.
Jarak antara titik A dan titik B, jarak antara titik B dan titik C, jarak antara titik C dan titik D, jarak antara titik D dan titik A iaitu "z" hendaklah sama.
Kita akan cari jarak antara dua titik menggunakan formula -
$$mathrm{d=sqrt{(x_{2}-x_{1})^2(y_{2}-y_{1})^2}}$$
Titik 1 ialah (x1, y1) dan titik 2 ialah (x2, y2).
Jom mulakan!
Diberi empat titik input ialah -
P1(3,7), P2(4,3), P3(7,8), P4(1,9)
Masukkan ke dalam formula jarak dan periksa sama ada syarat persegi dipenuhi, hasilnya akan menjadi -
Diberi empat mata jangan membentuk segi empat sama.
Diberi empat titik input ialah -
P1(20,20), P2(20,10), P3(10,10), P4(10,20)
Masukkan ke dalam formula jarak dan periksa sama ada syarat persegi dipenuhi, hasilnya akan menjadi -
Diberi empat mata membentuk segi empat sama.
Langkah-1 − Isytihar dan mulakan pembolehubah.
Langkah-2 − Cari jarak antara pusat 1 dan pusat 2 bulatan.
Langkah 3 - Semak lima syarat jarak.
Langkah-4 − Cetak hasilnya.
Kami menyediakan penyelesaian dengan cara yang berbeza.
Dengan menggunakan input statik
Dengan menggunakan kaedah yang ditentukan pengguna
Mari kita lihat program dan outputnya satu persatu.
Dalam kaedah ini, nilai mata akan diberikan. Kemudian mengikut algoritma kita akan mengetahui sama ada empat mata yang diberikan membentuk segi empat sama.
Terjemahan bahasa Cina bagipublic class Main{ //main method public static void main(String[] args){ //declaring variables int x1=3, x2=4, x3=7, x4=1; int y1=7, y2=3, y3=8, y4=9; double d1, d2, d3, d4, d5, d6; //applyinng logic d1 = (x2 - x1) * (x2 - x1) + (y2 - y1) * (y2 - y1); d2 = (x3 - x2) * (x3 - x2) + (y3 - y2) * (y3 - y2); d3 = (x4 - x3) * (x4 - x3) + (y4 - y3) * (y4 - y3); d4 = (x1 - x4) * (x1 - x4) + (y1 - y4) * (y1 - y4); d5 = (x4 - x2) * (x4 - x2) + (y4 - y2) * (y4 - y2); d6 = (x3 - x1) * (x3 - x1) + (y3 - y1) * (y3 - y1); if (d1 == 0 || d2 == 0 || d3 == 0 || d4 == 0 || d5 == 0 || d6 == 0){ System.out.println("Given four points do not form a square"); } else if (d1 == d2 && d2 == d3 && d3 == d4 && d5 == d6){ //prints if four points form square System.out.println("Given four points form a square"); } else { //prints if four points do not form square System.out.println("Given four points do not form a square"); } } }
Given four points do not form a square
Dalam kaedah ini, nilai mata akan diberikan. Kemudian kaedah yang ditentukan pengguna dipanggil dengan menghantar nilai yang diberikan dan berdasarkan algoritma ia menentukan sama ada empat mata yang diberikan membentuk segi empat sama.
Terjemahan bahasa Cina bagipublic class Main{ //main method public static void main(String[] args){ //creating objects of Point Point p1 = new Point(20, 20); Point p2 = new Point( 20, 10 ); Point p3 = new Point(10, 10 ); Point p4 = new Point( 10, 20 ); //calling user defined method if(isSquare(p1, p2, p3, p4)==true){ //print if four points form a square System.out.println("Given four points form a square"); } else{ //print if points does not form a square System.out.println("Given four points do not form a square"); } } // Declaring Point class static class Point{ int x, y; public Point(int x, int y){ this.x = x; this.y = y; } }; //function to find square of distance from point 'p' to point 'q' static int distSq(Point p, Point q){ return (p.x - q.x) * (p.x - q.x) + (p.y - q.y) * (p.y - q.y); } //user defined method static boolean isSquare(Point p1, Point p2, Point p3, Point p4){ int d1 = distSq(p1, p2); int d2 = distSq(p2, p3); int d3 = distSq(p3, p4); int d4 = distSq(p4, p1); int d5 = distSq(p1, p3); int d6 = distSq(p2, p4); if (d1 == 0 || d2 == 0 || d3 == 0 || d4 == 0 || d5 == 0 || d6 == 0) return false; if (d1 == d2 && d2 == d3 && d3 == d4 && d5 == d6){ //it returns true if (p1, p2, p3, p4) form a square return true; } //it returns false if (p1, p2, p3, p4) do not form a square return false; } }
Given four points form a square
Dalam artikel ini, kami meneroka cara yang berbeza untuk menyemak sama ada garis menyentuh, bersilang atau terletak di luar bulatan menggunakan bahasa pengaturcaraan Java.
Atas ialah kandungan terperinci Bagaimana untuk mengesahkan di Jawa sama ada diberi empat mata membentuk segi empat sama?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!