if Bedingung

TheBeginner

Mitglied
Hallo Zusammen,

Implementieren Sie eine Methode mit der Bezeichnung biggestNegativeInteger, die aus einem übergebenen ein-dimensionalen ganzzahligen Array den größten negativen Eintrag bestimmt und diesen zurückgibt. Enthält das übergebene Array keinen negativen Eintrag, so ist der Rückgabewert der Methode 0. Zur Erinnerung: -1 ist größer als -2.

public static int biggestNegativeInteger(int [] array) {

...

}





Java:
public static int biggestNegativeInteger(int[] array) {
	int temp = 0;
	for (int entry : array) {
		if ( entry < 0 && ( temp == 0 || temp < 0 && entry > temp ) ) {
			temp = entry;
		}
	}
	return temp;
}


Hallo Zusammen:

Ich habe eigentlich, fast dasselbe Ergebnis:

if ( entry < 0 && ( temp == 0 || entry > temp ) )


Das ist doch auch richtig, oder ?

Das ist meiner Meinung nach doppelt gemoppelt...

Danke im Voraus.
 
H

hüteüberhüte

Gast
Java:
int temp = 0;
if (entry < temp)
  temp = entry;

Fertig...

[EDIT]Ach sry... "Größte negative Zahl" übersehen:

Java:
public static int biggestNegativeInteger(int[] a) {
  int temp = 0;
  for (int i : a)
    if (i < 0 && (temp == 0 || i > temp))
      temp = i;
  return temp;
}

Ja, so hätte ich es auch geschrieben

Code:
if ( entry < 0 && ( temp == 0 || temp < 0 && entry > temp ) )
-> Wenn temp != 0, dann kann nur temp < 0 sein[/EDIT]
 
Zuletzt bearbeitet von einem Moderator:
H

hüteüberhüte

Gast
[OT]
Kurz, knapp, Aufgabe verfehlt.

Ist mir auch schon aufgefallen. Aber
Code:
temp < 0
ist imho überflüssig

Durch
Code:
entry < 0 && ...
ist sichergestellt, dass temp nur einen negativen Wert annehmen kann. Es ist also bloß noch zu Prüfen, ob temp == 0 noch ist

PS: Über ein "Danke" würd ich mich Freuen :toll:[/OT]
 
H

hüteüberhüte

Gast
Einfach mal einen kleinen Test machen:

Java:
    public static int biggestNegativeInteger(int[] a) {
        int temp = 0;
        for (int i : a) {
            if (i < 0 && (temp == 0 || i > temp)) {
                temp = i;
            }
        }
        return temp;
    }

    public static void main(String[] args) {

        int[] a = new int[5];

        for (int i = 0; i < 100; i++) {
            for (int j = 0; j < a.length; j++) {
                a[j] = (int) (Math.random() * 11d) - 5; // -5..5
            }
            System.out.println("a = "
                    + Arrays.toString(a)
                    + " -> "
                    + biggestNegativeInteger(a));
        }
    }

(Sry, jetzt wirds lang) :
Code:
a = [-3, 2, -2, 4, 1] -> -2
a = [-3, -1, 4, -3, -4] -> -1
a = [-3, -5, -4, -3, -2] -> -2
a = [1, -3, -5, -3, -2] -> -2
a = [5, -2, -3, 5, 3] -> -2
a = [-4, -1, 5, 4, 0] -> -1
a = [2, 3, 2, -1, 1] -> -1
a = [0, -4, -2, -1, 2] -> -1
a = [-1, -1, 0, 5, -3] -> -1
a = [-5, -2, 0, 3, 1] -> -2
a = [0, -5, 5, 5, -4] -> -4
a = [-2, -3, 5, -5, -1] -> -1
a = [-2, -1, 2, -3, 0] -> -1
a = [-3, -2, 0, -4, 3] -> -2
a = [5, 0, 4, 1, -1] -> -1
a = [0, 1, 3, -3, -3] -> -3
a = [-5, 3, 4, -5, 1] -> -5
a = [4, -5, -4, 2, 0] -> -4
a = [2, 4, 1, -1, 3] -> -1
a = [-2, 1, 4, 1, 0] -> -2
a = [-4, 5, 2, -2, -1] -> -1
a = [-3, -1, -1, 1, 4] -> -1
a = [-3, -3, -1, 5, 5] -> -1
a = [-3, -2, 5, 0, 5] -> -2
a = [2, -4, 1, 3, -2] -> -2
a = [4, 1, 1, 5, 1] -> 0
a = [2, 5, 4, 5, 3] -> 0
a = [-2, -3, -4, -1, -4] -> -1
a = [-5, -5, 2, -1, -3] -> -1
a = [3, -3, 4, 2, 5] -> -3
a = [5, -4, -2, 2, 0] -> -2
a = [2, -4, 1, -2, 5] -> -2
a = [5, 1, -2, 0, -2] -> -2
a = [0, 4, 2, -1, -3] -> -1
a = [5, 1, -1, 3, -3] -> -1
a = [1, -5, 3, -2, -4] -> -2
a = [-2, -1, -3, 1, -3] -> -1
a = [0, 5, 5, -2, -2] -> -2
a = [2, 3, 5, 1, 1] -> 0
a = [2, -4, 5, -5, 2] -> -4
a = [-5, 0, 2, 0, -1] -> -1
a = [-3, 5, 3, -4, -3] -> -3
a = [2, 3, 5, 2, 2] -> 0
a = [2, 2, 2, 1, 3] -> 0
a = [0, -4, 3, -2, 5] -> -2
a = [2, 0, 3, -4, 4] -> -4
a = [4, 0, 5, -5, 4] -> -5
a = [-1, -2, -3, -5, -1] -> -1
a = [4, 3, 4, 5, 3] -> 0
a = [2, 2, -5, 2, -5] -> -5
a = [5, -2, -3, 5, -1] -> -1
a = [0, -1, -3, 4, 0] -> -1
a = [0, -5, -5, 3, 5] -> -5
a = [-5, -2, 1, 5, 5] -> -2
a = [-1, 5, -5, 2, -4] -> -1
a = [2, 3, -4, -4, -5] -> -4
a = [4, -2, 5, -2, -2] -> -2
a = [3, 5, -4, -5, -5] -> -4
a = [-4, 4, 3, 5, -3] -> -3
a = [0, 2, -2, 2, -4] -> -2
a = [3, 4, -5, 0, -5] -> -5
a = [-1, 0, -4, -1, 2] -> -1
a = [-2, 3, -2, 1, -5] -> -2
a = [-4, 3, 4, 4, 2] -> -4
a = [0, -1, 1, -2, -4] -> -1
a = [4, 1, -1, -2, 3] -> -1
a = [1, -3, 1, -2, 4] -> -2
a = [-4, 2, -4, -5, -3] -> -3
a = [-5, -4, -5, -2, -1] -> -1
a = [2, -4, -3, -2, 4] -> -2
a = [2, -1, 3, 0, -3] -> -1
a = [4, -3, -4, 1, -2] -> -2
a = [-1, 4, -3, -5, -1] -> -1
a = [5, 2, 4, 4, -2] -> -2
a = [4, 3, 3, 2, 5] -> 0
a = [-4, -4, -1, -5, 1] -> -1
a = [-2, -3, 4, 3, 3] -> -2
a = [-5, 4, 5, 5, 5] -> -5
a = [4, -4, 1, -3, 2] -> -3
a = [-1, -2, 1, 1, -2] -> -1
a = [5, 5, 1, 1, -1] -> -1
a = [1, 5, 1, -2, 2] -> -2
a = [-1, 3, 3, -2, -5] -> -1
a = [5, -5, 3, -2, 4] -> -2
a = [1, -1, 2, -1, 2] -> -1
a = [-3, 0, -5, 2, -1] -> -1
a = [0, 4, 2, 2, -1] -> -1
a = [-4, 2, -5, 0, -3] -> -3
a = [3, -2, -1, 3, -4] -> -1
a = [-2, -3, -3, 1, 1] -> -2
a = [-1, -1, -2, 2, 4] -> -1
a = [5, 3, -5, -3, 3] -> -3
a = [5, -2, 2, 5, 0] -> -2
a = [5, -5, 2, 2, 2] -> -5
a = [-2, 4, -2, 0, 3] -> -2
a = [3, 1, -3, 1, 1] -> -3
a = [-3, -2, -4, -1, 3] -> -1
a = [5, -1, -5, -3, -3] -> -1
a = [0, 2, 2, -4, -3] -> -3
a = [-3, 1, 1, 0, 4] -> -3

[EDIT]Und dann noch testen:
Java:
        for (int i = -5; i <= 5; i++) {
            for (int j = 0; j < a.length; j++) {
                a[j] = i;
            }
            System.out.println("a = "
                    + Arrays.toString(a)
                    + " -> "
                    + biggestNegativeInteger(a));
        }
[/EDIT]
 
Zuletzt bearbeitet von einem Moderator:

Crian

Top Contributor
Was soll geschehen, wenn das Array keine negativen Werte hat? So gibst du 0 aus, was sicher nicht die größte, negative Zahl ist. Nichtmal ein Element ist es u.U.
 
H

hüteüberhüte

Gast
Aber das steht doch in der Aufgabe: "Enthält das übergebene Array keinen negativen Eintrag, so ist der Rückgabewert der Methode 0" ..
 
S

SlaterB

Gast
7 Buchstaben braucht dieses Thema als Antwort,
ich sollte alles außer meinem Posting zuvor löschen :bae:

edit:
Erledigt-Markierung gesetzt, hält den Ansturm hoffentlich etwas auf ;)
 
H

hüteüberhüte

Gast
[OT]@SlaterB: Wir diskutieren halt gerne alternative Lösungsvorschläge :bae:

PS: Bitte nicht löschen, mein 600. Beitrag :D[/OT]
 
S

SlaterB

Gast
> PS: Bitte nicht löschen, mein 600. Beitrag

ich lösch einfach zwei andere ;)

(und ich habs nicht so mit Offtopic-Tags, nebenbei, was ich schreibe ist eh immer wichtig)
 
H

hüteüberhüte

Gast
Vielleicht ist zu diesem Thema noch hinzuzufügen: Was ist die größte negative zahl? ? Wikianswers - Frag Wikia! - Das Wiki zu Fragen und Antworten - Wikianswers Deutsch , auch, wenn ich der einzige zu seien scheine, der das für die anderen Selbstverständliche noch nicht begriffen hat :eek:

[EDIT]Vielleicht ist auch noch interessant, was zu Keil in der API zu finden ist:
Returns the largest (closest to positive infinity) double value that is less than or equal to the argument and is equal to a mathematical integer.
[/EDIT]
 
Zuletzt bearbeitet von einem Moderator:
Ähnliche Java Themen
  Titel Forum Antworten Datum
T if-else Bedingung wird ignoriert Java Basics - Anfänger-Themen 4
B Alle Strings bis zu einer Maimallänge aufzählen, die Bedingung erfüllen Java Basics - Anfänger-Themen 13
Lion.King if-Bedingung Java Basics - Anfänger-Themen 3
B Zuweisungen und Methodenaufrufe in Bedingung der while Schleife? Java Basics - Anfänger-Themen 2
Avalon Warum funktioniert eine Bedingung und eine andere nicht? Java Basics - Anfänger-Themen 2
L while Schleife mit 2 Bedingung endet nicht Java Basics - Anfänger-Themen 3
M Wie lassen sich Konstanten in Bedingung stellen? Java Basics - Anfänger-Themen 1
M Wie lassen sich Objektkonstanten initialisieren, wenn sie eine Bedingung erreichen? Java Basics - Anfänger-Themen 6
M Wie verknüpfe ich eine Bedingung mit einer Methode ohne if-Verzweigung & Bedingungsoperator? Java Basics - Anfänger-Themen 2
A Dividieren mit Bedingung? Java Basics - Anfänger-Themen 7
P Bedingung in Schleife wird nicht ausgeführt Java Basics - Anfänger-Themen 5
Dimax Collections groupingBy mit Bedingung Java Basics - Anfänger-Themen 11
H Frage zur if-Bedingung bzw switch case Java Basics - Anfänger-Themen 6
F Bedingung für Eingabe Java Basics - Anfänger-Themen 2
scratchy1 Variablen vertauschen wenn Bedingung "umgedreht" wird Java Basics - Anfänger-Themen 40
Hanschyo If Bedingung Fehler Java Basics - Anfänger-Themen 7
T Komischer Fehler mit einer if-Bedingung Java Basics - Anfänger-Themen 3
W while Schleife und Bedingung Java Basics - Anfänger-Themen 11
E if-Bedingung mit mehreren Möglichkeiten ? Java Basics - Anfänger-Themen 6
S DefaultTableCellRenderer mit Bedingung Java Basics - Anfänger-Themen 1
J Fehler abfangen mit einer Bedingung Java Basics - Anfänger-Themen 3
Z Verschachtelte If-Bedingung Java Basics - Anfänger-Themen 6
N Methode mit While-Schleife und If-Bedingung und Array-Initialisierung Java Basics - Anfänger-Themen 4
L (Integer) Liste nach aufsteigender Summe der Ziffern sortieren (mit Bedingung) Java Basics - Anfänger-Themen 8
I Welche Schleife/Bedingung nehme ich her Java Basics - Anfänger-Themen 5
C Compiler-Fehler Wird eine if Bedingung nach einer for-Schleife nach jeder Iteration überprüft? Java Basics - Anfänger-Themen 1
B Kann mir jemand diese Bedingung erklären Java Basics - Anfänger-Themen 5
L Methoden if Bedingung trotz Erfüllung, nicht angesprochen Java Basics - Anfänger-Themen 12
P Compiler-Fehler if Bedingung fehlerhaft Java Basics - Anfänger-Themen 7
X Schleife bis "Bedingung" ausführen Java Basics - Anfänger-Themen 13
TheMenox Verschachtelte If Bedingung Java Basics - Anfänger-Themen 4
M Erste Schritte if-Bedingung schlägt fehl Java Basics - Anfänger-Themen 4
T Eigene Bedingung in IF-Bedingung Java Basics - Anfänger-Themen 22
Ocram Variablen Vereinfachung einer Bedingung Java Basics - Anfänger-Themen 18
J Can't find symbol - Erstellung eines Objekts in if-Bedingung Java Basics - Anfänger-Themen 3
M Frage zu if-Bedingung Java Basics - Anfänger-Themen 1
F Erste Schritte If Bedingung in Schleife dynamisch erweitern Java Basics - Anfänger-Themen 4
J Wo liegt nur an dieser einfachen Bedingung mein Fehler? Java Basics - Anfänger-Themen 8
R for-Schleife bei erfüllter Bedingung beenden Java Basics - Anfänger-Themen 7
R if funktion ohne else - Bedingung trifft nicht zu, ausgabe nicht nachvollziehbar Java Basics - Anfänger-Themen 7
S if bedingung - Stunde und Minute vergleichen Java Basics - Anfänger-Themen 5
K If-Bedingung mit Wertzuweisung Java Basics - Anfänger-Themen 2
J Vererbung If-Bedingung im Konstruktor Java Basics - Anfänger-Themen 15
J Arrays prüfen und über if Bedingung ausgeben Java Basics - Anfänger-Themen 15
MiMa for Schleife Bedingung Java Basics - Anfänger-Themen 4
M in jTable schreiben unter Bedingung Java Basics - Anfänger-Themen 3
J Erste Schritte Kurze Frage zu Listenern und If-Bedingung Java Basics - Anfänger-Themen 2
N Verifikation einer if-Bedingung Java Basics - Anfänger-Themen 9
P Variablen ArrayList mit Bedingung iterieren Java Basics - Anfänger-Themen 2
E if(Bedingung) Java Basics - Anfänger-Themen 9
L Erste Schritte Sollte ich hier lieber Cases verwenden oder wäre eine If-Bedingung besser? Java Basics - Anfänger-Themen 6
Anfänger2011 Wie bricht man alles ab wenn eine Bedingung nicht erfüllt ist? Java Basics - Anfänger-Themen 21
P Variablen Variable in if Bedingung anlegen, Wert zuweisen und diesen als Bedingung nutzen Java Basics - Anfänger-Themen 4
M Und Bedingung Java Basics - Anfänger-Themen 17
N Bedingung für Datentypen Java Basics - Anfänger-Themen 3
E if-Bedingung funktioniert nicht Java Basics - Anfänger-Themen 9
W Funktionsaufruf nach Bedingung Java Basics - Anfänger-Themen 3
S for schleife mit if bedingung Java Basics - Anfänger-Themen 21
S return(Bedingung) ? [mehrere Befehle] Java Basics - Anfänger-Themen 5
2 Bedingung bei Schleife Java Basics - Anfänger-Themen 23
E Methode in der Bedingung Java Basics - Anfänger-Themen 11
E if Bedingung Java Basics - Anfänger-Themen 4
H Sortierung eines String[][] mit Bedingung Java Basics - Anfänger-Themen 7
H Bedingung while-Schleife | integer number too large Java Basics - Anfänger-Themen 2
J Gibt es eine möglichkeit ähnlich wie .equals(bedingung1 ||bedingung ..n) ? Java Basics - Anfänger-Themen 5
I Potenzmenge mit Bedingung Java Basics - Anfänger-Themen 24
S If-Bedingung Java Basics - Anfänger-Themen 15
P Einfache Bedingung (?) in Java Java Basics - Anfänger-Themen 3
K Fragen zu If-Bedingung Java Basics - Anfänger-Themen 3
S bedingung in variable speichern? Java Basics - Anfänger-Themen 8
neurox Ergebnis der if-Bedingung weiter verwenden Java Basics - Anfänger-Themen 5
G If-Schleife läuft ohne erfüllte Bedingung Java Basics - Anfänger-Themen 13
K Logik in if-Bedingung Java Basics - Anfänger-Themen 2
S if anweisung wird ausgeführt egal ob bedingung true o. false Java Basics - Anfänger-Themen 2
S For Schleife, Bedingung Java Basics - Anfänger-Themen 4
S Wildcard-Bedingung Java Basics - Anfänger-Themen 10
G Probleme mit break hier; in if-Bedingung Java Basics - Anfänger-Themen 5
M Schleife abhängig von Bedingung Java Basics - Anfänger-Themen 5
G while Bedingung? Java Basics - Anfänger-Themen 6
L Bedingung immer false, auch wenn zwei Strings gleich sind Java Basics - Anfänger-Themen 11
L IF Bedingung in SELECT Statement? Java Basics - Anfänger-Themen 3
M Kleine Frage zu If-Bedingung Java Basics - Anfänger-Themen 4
Bierhumpen String Bedingung. Java Basics - Anfänger-Themen 8
M Comparable - Bedingung erzwingen Java Basics - Anfänger-Themen 3
R Klassen nach Bedingung laden Java Basics - Anfänger-Themen 22
G Compiler sieht die Bedingung nicht! Java Basics - Anfänger-Themen 5
W if Bedingung mit "Außer" Java Basics - Anfänger-Themen 4

Ähnliche Java Themen

Neue Themen


Oben