C
ChristianC1403
Gast
Ich versuchte gerade ein kleines Programm in Java zu schreiben. Dabei sollen 4 Zahlen (a,b,c,d) eingegeben werden.
Wenn a<b<c<d ist, soll "S" ausgegeben werden.
Wenn a<=b<=c<=d ist, soll "M" ausgegeben werden.
Sonst soll "N" ausgegeben werden.
(Wie man sieht, soll es monotone Steigungen bestimmen.)
Allerdings gibt es bei den Fällen:
1,2,3,4
1,2,2,3
1,2,3,3
1,5,2,3
1,2,5,3
Jeweils ein "N" nach der richtigen Ausgabe aus. Ich habe leider keine Idee woran dies liegen könnte. Hoffentlich kann hier jemand
den Fehler finden.
Hier ist der entscheidente Codeausschnitt:
Wenn a<b<c<d ist, soll "S" ausgegeben werden.
Wenn a<=b<=c<=d ist, soll "M" ausgegeben werden.
Sonst soll "N" ausgegeben werden.
(Wie man sieht, soll es monotone Steigungen bestimmen.)
Allerdings gibt es bei den Fällen:
1,2,3,4
1,2,2,3
1,2,3,3
1,5,2,3
1,2,5,3
Jeweils ein "N" nach der richtigen Ausgabe aus. Ich habe leider keine Idee woran dies liegen könnte. Hoffentlich kann hier jemand
den Fehler finden.
Hier ist der entscheidente Codeausschnitt:
Java:
import java.util.Scanner;
class Monotonie {
public static void main(String[] args){
Scanner eingabeEins = new Scanner (System.in);
Scanner eingabeZwei = new Scanner (System.in);
Scanner eingabeDrei = new Scanner (System.in);
Scanner eingabeVier = new Scanner (System.in);
int a = eingabeEins.nextInt();
int b = eingabeZwei.nextInt();
int c = eingabeDrei.nextInt();
int d = eingabeVier.nextInt();
System.out.println();
if(a<b)
if(b<c)
if(c<d)
System.out.println("S");
else
if(c==d)
System.out.println("M");
else
System.out.println("N");
else
if(b==c)
if(c<=d)
System.out.println("M");
else
System.out.println("N");
else
System.out.println("N");
if(a==b)
if(b<=c)
if(c<=d)
System.out.println("M");
else
System.out.println("N");
else
System.out.println("N");
else
System.out.print("N");
}
}
Zuletzt bearbeitet von einem Moderator: