JavaRush /Java-Blog /Random-DE /Kaffeepause Nr. 170. Wir schreiben ein Java-Programm, um ...

Kaffeepause Nr. 170. Wir schreiben ein Java-Programm, um nach einem rechtwinkligen Dreieck zu suchen. Erstellen Sie Ihren eigenen Sortieralgorithmus

Veröffentlicht in der Gruppe Random-DE

Java-Programm zur Überprüfung rechtwinkliger Dreiecke

Quelle: Mayankvikash Dieser Artikel zeigt die Entwicklung eines Java-Programms zum Testen eines Dreiecks, um festzustellen, ob es einen rechten Winkel hat. Ein rechtwinkliges Dreieck ist ein Dreieck, dessen Innenwinkel 90 Grad beträgt. Es gibt mehrere Eigenschaften eines rechtwinkligen Dreiecks; Eine davon ist, dass das Quadrat der Hypotenuse gleich der Summe des Quadrats der Schenkel (Senkrechte und Basis des Dreiecks) ist. Dies wird als Satz des Pythagoras bezeichnet. Die Hypotenuse ist die längste Seite eines Dreiecks. Kaffeepause Nr. 170.  Wir schreiben ein Java-Programm, um nach einem rechtwinkligen Dreieck zu suchen.  Erstellen Sie Ihren eigenen Sortieralgorithmus – 1

Programmlogik

Da das Quadrat der Hypotenuse gleich der Summe der Quadrate der beiden anderen Seiten ist, müssen wir diese Summe berechnen. Und wenn es gleich dem Quadrat der Hypotenuse ist, dann ist das Dreieck rechtwinklig. Screenshot des Programms: Kaffeepause Nr. 170.  Wir schreiben ein Java-Programm, um nach einem rechtwinkligen Dreieck zu suchen.  Erstellen Sie Ihren eigenen Sortieralgorithmus - 2Jetzt schreiben wir das Programm. Hier ist seine Grundstruktur:
import java.util*;
public class RightAngledTriangle{
  public static void main(String args[]){
    Scanner in = new Scanner(System.in);
    // code
  }
}
Deklaration von Variablen:
int h, p, b;
Benutzeraufforderung zur Eingabe:
System.out.println("Enter the Hypotenuse");
h = in.nextInt();
System.out.println("Enter the Perpendicular");
p = in.nextInt();
System.out.println("Enter the Base");
b = in.nextInt();
Eine einfache Möglichkeit zu überprüfen, ob das Quadrat der Hypotenuse gleich der Summe der Quadrate der Senkrechten und der Basis ist, ist die Verwendung von if-else . If-else -Bedingung :
if (h*h==(p*p)+(b*b)){
    System.out.println("Right Angled Triangle");
}
else{
    System.out.println("Not a right angled Traingle");
}

Code

import java.util.*;
public class RightAngledTriangle {

    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int h, p, b;
        System.out.println("Enter the Hypotenuse");
        h = in.nextInt();
        System.out.println("Enter the Perpendicular");
        p = in.nextInt();
        System.out.println("Enter the Base");
        b = in.nextInt();

        if (h*h==(p*p)+(b*b)){
            System.out.println("Right Angled Triangle");
        }
        else{
            System.out.println("Not a right angled Traingle");
        }

    }
}

Abschluss

Nicht rechtwinkliges Dreieck: Kaffeepause Nr. 170.  Wir schreiben ein Java-Programm, um nach einem rechtwinkligen Dreieck zu suchen.  Erstellen Sie Ihren eigenen Sortieralgorithmus - 3Rechtwinkliges Dreieck: Kaffeepause Nr. 170.  Wir schreiben ein Java-Programm, um nach einem rechtwinkligen Dreieck zu suchen.  Erstellen Sie Ihren eigenen Sortieralgorithmus - 4

Erstellen Sie Ihren eigenen Sortieralgorithmus

Quelle: Medium In diesem Tutorial erfahren Sie, wie Sie nicht nur in aufsteigender oder absteigender Reihenfolge, sondern auch anhand Ihrer eigenen Parameter sortieren. Kaffeepause Nr. 170.  Wir schreiben ein Java-Programm, um nach einem rechtwinkligen Dreieck zu suchen.  Erstellen Sie Ihren eigenen Sortieralgorithmus - 5Normalerweise sortieren wir in Java oder einer anderen Programmiersprache in aufsteigender oder absteigender Reihenfolge. Aber können wir nach unseren eigenen Parametern sortieren? Um das herauszufinden, sortieren wir zunächst wie gewohnt – aufsteigend oder absteigend.
//Например, у нас есть массив
Integer array[]={9,4,8,5,7,6,1,2,3};

//Сортируем по возрастанию
Arrays.sort(array);

//печатаем отсортированный массив
System.out.println(Arrays.toString(array));

//Сортируем по убыванию
Arrays.sort(array, Collections.reverseOrder());

//печатаем отсортированный массив
System.out.println(Arrays.toString(array));
Ausfahrt:
[1,2,3,4,5,6,7,8,9] [9,8,7,6,5,4,3,2,1]
Arrays.sort(array) ist eine Sammlungsmethode in Java zum Sortieren eines Arrays. Wird es ohne zweiten Parameter verwendet, erfolgt die Sortierung aufsteigend. Im zweiten Parameter können wir Collections.reverseOrder() so definieren , dass in absteigender Reihenfolge sortiert wird. Aber wir müssen im zweiten Parameter unseren eigenen Sortieralgorithmus erstellen. Wie kann man das machen? Angenommen, wir müssen die Zahlen in einem Array so anordnen, dass wir beim Kombinieren eine Zahl erhalten, die die größte aller Zahlen ist, mit der Bedingung, dass nur die Position der Zahlen geändert werden kann, nicht aber die Ziffern in dieser Zahl. Zum Beispiel: {1,2,3,4}=>{4321} {12,34}=>{3412} {30,3}=>{330} {8,89}=>{898} Es gibt eine Klasse im Java Comparator , in der wir die Vergleichsfunktion überladen müssen. Die Funktionsweise besteht darin, dass, wenn zwei Elemente in der Reihenfolge {item1, item2} erscheinen , sie von der Komparatorfunktion wie folgt akzeptiert werden:
public int compare(item 1, item2){

}
Wenn die Funktion einen positiven Wert ausgibt, vertauscht die Sortierfunktion die Elemente. Das heißt, die Ausgabe in der Sammlung ist {item2,item1} . Wenn die Funktion ein negatives oder Null-Ergebnis ausgibt, ändert sich die Reihenfolge nicht, die Ausgabe bleibt dieselbe: {item1,item2} . Diese Logik gilt rekursiv für alle Mitglieder des Arrays. Kehren wir also zur ursprünglichen Frage zurück und definieren wir unsere Logik in der Komparatorklasse, indem wir die Funktion „compare()“ wie folgt überladen:
Collections.sort(A,new Comparator<Integer>(){

public int compare(Integer a,Integer b){
String a1=Integer.toString(a)+Integer.toString(b);
String a2=Integer.toString(b)+Integer.toString(a);
int l =a1.length();
for(int i=0;i<l;i++){

if(a1.charAt(i)>a2.charAt(i)){
return -1;
}

else if(a1.charAt(i)<a2.charAt(i)){
return 1;

}

else continue;

}

return 0;

}
Hier haben wir zwei Zahlen kombiniert und geprüft, welche größer ist. Diese Logik wird rekursiv auf alle anderen Zahlen im Array angewendet, um das gewünschte Ergebnis zu erzielen. Um es zusammenzufassen: Verwenden Sie die Comparator- Klasse, um die Funktion „compare()“ zu überladen . Auf diese Weise können Sie Ihre eigene Sortierlogik erstellen und einen positiven Wert zurückgeben , wenn Sie die Reihenfolge des Erscheinens im Array ändern, und einen negativen Wert oder 0 , wenn Sie die Reihenfolge beibehalten.
Kommentare
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION