arry maxbetrag

Status
Nicht offen für weitere Antworten.
G

Guest

Gast
servus;

->Ich möchte eine Java Funktion maxBetrag(int[] a) schreiben, die mir den größten Absolutbetrag eines Arrays ausgibt, und weiss nicht wirklich was die beste Möglichkeit wäre. Kann mir jemand helfen?
Code:
public static maxBetrag(int[] a) {
  for (int i=1;i<a.legth,++i){
   int max=Math.abs(a[0]);
   if(max<Math.abs(a[i])
     max=Math.abs(a[i]);
 }
return max;
}

soviel ich weiß ist da was verkehrt?
 

Wildcard

Top Contributor
Den max Wert musst du vor der Schleife definieren, sonst wird er ja immer überschrieben!
Code:
public static int maxBetrag(int[] a) 
{ 
    int max=Math.abs(a[0]); 
    for (int i=1;i<a.length,++i)
    { 
        if(max<Math.abs(a[i]) 
            max=Math.abs(a[i]); 
    } 
    return max; 
}
 
G

Guest

Gast
ich möchte jetzt das programm abändern, sodass folgende aufgabe erfüllt ist. ich weiß aber nicht ob das logisch korrekt ist. AUfageb: schreiben sie eine java funktion minBetrag(double[] a), die den vom Betrag her kleinsten Wert des Arrays a zurückgibt.

Habs jetzt so geändert, ich weiss nicht obs auch mit Math.abs geht?!

Code:
public static int minBetrag(double[] a)
{
    double min=Math.abs(a[0]);
    for (int i=1;i<a.length,++i)
    {
        if(min>Math.abs(a[i])
            min=Math.abs(a[i]);
    }
    return min;
}
 

mic_checker

Top Contributor
Ein,zwei Sachen müssen noch geändert werden:

Code:
	public static double minBetrag(double[] a) {
		double min=Math.abs(a[0]);
		
		for (int i=1;i<a.length;++i) 
			if(min>Math.abs(a[i]))
				min=Math.abs(a[i]);
						
		return min;
	}

sollte aber sonst eigentlich stimmen.
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen

Neue Themen


Oben