Servus Leute,
ich bräuchte mal eure Hilfe. Ich soll folgende Aufgabe bearbeiten:
Gegeben seien drei nicht-negative Längen a, b, c eines Dreiecks. Entwickeln Sie das Java-Programm Triangle.java, das die folgenden Eigenschaften bestimmt:
Dreieck: Als grundsätzliche Eigenschaft eines Dreiecks muss die Summe zweier Seiten immer größer als die Länge der verbleibenden Seite sein.
Gleichschenkliges Dreieck: Genau zwei Seiten sind gleichlang.
Gleichseitiges Dreieck: Alle Seiten besitzen die gleiche Länge.
Implementierungshinweis: Verwenden Sie den Datentyp double zur Speicherung der Längen. Gehen Sie bei der Programmentwicklung wie folgt schrittweise vor:
a) Verwenden Sie zur Eingabe die entsprechenden Programmteile aus der aus Blatt 3 bekannten Klasse Stdin. Geben Sie die eingelesenen Werte in einer Zeile aus. Testen Sie das Programm mit einigen Werten.
b) Ergänzen Sie nun das Programm um die Bestimmung der oben angegebenen Eigenschaften. Geben Sie das Ergebnis der Überprüfung aus. Testen Sie das Programm erneut mit einigen Werten.
c) Erweitern Sie das Programm derart, dass am Ende des Programmlaufs anhand einer Benutzereingabe eine Wiederholung gesteuert wird.
Implementierungshinweis: Verwenden Sie als Kontrollkonstrukt eine do while Schleife, zur Eingabe den Datentyp String, und zum Vergleich die Methode equals.
Im Grunde steht mein Programm auch schon, ich habe nur ein Problem und zwar die do while schleife will nicht so recht. sie führt sich zwar wieder aus bei tastatureingabe, aber eben egal was ich eingebe und sie soll mit nein beendet werden.
Folgenden quelltext hab ich erstellt:
Wär echt sau cool, wenn mir jemand weiterhelfen könnte
Danke schon mal
Gruß Andi
ich bräuchte mal eure Hilfe. Ich soll folgende Aufgabe bearbeiten:
Gegeben seien drei nicht-negative Längen a, b, c eines Dreiecks. Entwickeln Sie das Java-Programm Triangle.java, das die folgenden Eigenschaften bestimmt:
Dreieck: Als grundsätzliche Eigenschaft eines Dreiecks muss die Summe zweier Seiten immer größer als die Länge der verbleibenden Seite sein.
Gleichschenkliges Dreieck: Genau zwei Seiten sind gleichlang.
Gleichseitiges Dreieck: Alle Seiten besitzen die gleiche Länge.
Implementierungshinweis: Verwenden Sie den Datentyp double zur Speicherung der Längen. Gehen Sie bei der Programmentwicklung wie folgt schrittweise vor:
a) Verwenden Sie zur Eingabe die entsprechenden Programmteile aus der aus Blatt 3 bekannten Klasse Stdin. Geben Sie die eingelesenen Werte in einer Zeile aus. Testen Sie das Programm mit einigen Werten.
b) Ergänzen Sie nun das Programm um die Bestimmung der oben angegebenen Eigenschaften. Geben Sie das Ergebnis der Überprüfung aus. Testen Sie das Programm erneut mit einigen Werten.
c) Erweitern Sie das Programm derart, dass am Ende des Programmlaufs anhand einer Benutzereingabe eine Wiederholung gesteuert wird.
Implementierungshinweis: Verwenden Sie als Kontrollkonstrukt eine do while Schleife, zur Eingabe den Datentyp String, und zum Vergleich die Methode equals.
Im Grunde steht mein Programm auch schon, ich habe nur ein Problem und zwar die do while schleife will nicht so recht. sie führt sich zwar wieder aus bei tastatureingabe, aber eben egal was ich eingebe und sie soll mit nein beendet werden.
Folgenden quelltext hab ich erstellt:
Code:
Das is mein code
import java.io.*;
public class Triangle
{
public static void main ( String[]args) throws IOException
{
String Abfrage= " ";
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String Ja="Ja";
String Nein="Nein";
do
{
System.out.print("Bitte die Länge der ersten Seite eingeben! a=");
double a=Stdin.readDouble();//hierfür habe ich noch eine eigene class, funktioniert auch alles!
if(a<=0)
{
System.out.print("Bitte erneut Seitenlänge eingeben (Hinweis:Wert<=o nicht zulässig! a=)");
a=Stdin.readDouble();
}
System.out.print("Bitte die Länge der ersten Seite eingeben! b=");
double b=Stdin.readDouble();
if(b<=0)
{
System.out.print("Bitte erneut Seitenlänge eingeben (Hinweis:Wert<=o nicht zulässig! b=)");
b=Stdin.readDouble();
}
System.out.print("Bitte die Länge der ersten Seite eingeben! c=");
double c=Stdin.readDouble();
if(c<=0)
{
System.out.print("Bitte erneut Seitenlaenge eingeben (Hinweis:Wert<=o nicht zulässig!) c=");
c=Stdin.readDouble();
}
if(a==b&&b==c&&(a+b>c||a+c>b||b+c>a) )
{
System.out.println( "Die Längen der Seiten sind "+a+" "+b+" "+c);
System.out.println ("Es liegt ein gleichseitiges Dreieck vor!");
}
else
if((a==b||a==c||b==c)&&(a+b>c||a+c>b||b+c>a))
System.out.println ("Es liegt ein gleichschenkliges Dreieck vor!");
else
if (a+b>c||a+c>b||b+c>a)
System.out.println ( "Es liegt ein normales Dreieck vor!");
else
System.out.println ("Es liegt kein Dreieck vor!");
System.out.println ("Neues Dreieck? (JA/NEIN)");
Abfrage = br.readLine();
if (Abfrage!="Ja")
{if (Abfrage!="Nein")
System.out.println ("Ungueltige Eingaben!");
Abfrage = br.readLine();
}
}
while(Abfrage!="Nein");
}
}
Wär echt sau cool, wenn mir jemand weiterhelfen könnte
Danke schon mal
Gruß Andi