Differenz-Methode mit Array lösen

chb89

Mitglied
Hallo liebes Forum!

ich habe ein kleines Problem mit einer Schulaufgabe, die ich bis morgen lösen muss. Ich hoffe ihr könnt mir helfen. Wir stehen noch ganz am Anfang von java, ihr werde euch wohl über die Aufgabe lustig machen🙂

--------

Aufgabe:
Der differenz-Methode wird ein Array x übergeben. Zurückgegeben werden soll die Differenz aufeinanderfolgender Werte.
Berechnungsmethode: Nachfolger - Vorgänger
Mit den Zahlen aus dem Beispiel: 2,4−(−1,5)=3.9 und 3,8−2,4=1,4 usw.

Beispiel:
double[] a = {-1.5, 2.4, 3.8, 4.3, 6.8};
double[] b = differenz(a); Ergebnis: b= {3.9, 1.4, 0.5, 2.5}
Hinweis: Überlegen Sie genau, welche Größe das Array y haben muss.
Hinweis: Rechnen Sie im Quelltext mit den Variablen und nicht mit den konkreten Zahlen aus dem Beispiel!


1 public double[] differenz(double[] x) {
2 double[] y = ________________________________________
3 _______________________________________________________
4 _______________________________________________________
5 _______________________________________________________
6 _______________________________________________________
7 _______________________________________________________
8 _______________________________________________________
9 _______________________________________________________
10 _______________________________________________________
11 _______________________________________________________
12 _______________________________________________________
13 _______________________________________________________
14 _______________________________________________________
15 return y;
16 }
 
...ihr werde euch wohl über die Aufgabe lustig machen🙂

Weniger über die Aufgabe an sich, als eher über die Aufgabenstellung:

Hinweis: Rechnen Sie im Quelltext mit den Variablen und nicht mit den konkreten Zahlen aus dem Beispiel!

Da hat wohl jemand aus Erfahrung gelernt 😀


Aber irgendwelche Ansätze solltest du schon posten...

EDIT: *grübel* ... wo man da jetzt Math.abs brauchen soll? ... :bahnhof:
 
Danke für die Lösung. Ich glaube das geht aber schon über unsere Verhältnisse hinaus🙂

Also ich als Leihe würde erstmal eine for schleife machen. Wäre das richtig? int i=0;i<x<;i++ oder so und dann x - x-1 oder so rechnen.
 
Zuletzt bearbeitet:
Ja, eine for-Schleife ist schonmal nicht falsch. Schreib' einfach hin, was du denkst, lies ein bißchen, und probier ein bißchen, und frag' dann nochmal nach (und poste, was du bis dahin gemacht hast). Ist wirklich nicht viel: Eine for-Schleife, insgesamt 5 Zeilen....
 
Java:
public class array_test {

	public static void main(String[] args) {
		
		double[] a = {-1.5, 2.4, 3.8, 4.3, 6.8};
		double[] b = differenz(a);
		
		int i;
		for (i=0; i<b.length; i++) {
			System.out.println(b[i]);
		}
		
	}
	
	public static double[] differenz(double[] x) {
		int laenge = x.length - 1;
		double[] y = new double[laenge];
		
		int i;
		for (i = 0; i<laenge; i++) {
			y[i] = x[i+1] - x[i];
		}
		return y;
	}

}

Viel Spaß damit!

Bei Gefallen freue ich mich über ein [Danke].
 
Ich will ja keine Miesmacher sein ... aber das Forum hat als wichtige Regel "Es werden keine Hausaufgaben gemacht" und man hilft dir(chb89) auch nicht, da dir dann bei späteren Aufgabenstellungen, dass Wissen bzw die Erfahrung fehlt. Und es schaut denke ich auch keiner auf die "Danke" im Profil PaSch(ich will dir nicht unterstellen, dass es dir darum geht, du hilfst im damit halt nicht wirklich...)
 
niemand kann anderen Menschen vorschreiben was sie zu tun haben,
ich schätze mal fürs Vorsagen wird auch in diesem Forum niemand gesperrt 😉

wer verraten will, wird nicht gehindert, seine Schlüsse muss jeder selber ziehen,
mit 3 Beiträgen ist ja noch Lernzeit, bei 3000 Beiträgen richtet sich das gewiss ein
 
War auch nicht mein Ziel, dass er gesperrt wird. Wollte nur darauf aufmerksam machen. Das er erst so wenige Beiträge hat hab ich nicht gesehen.

Achja: gz zu 20.000 Beiträgen 🙂
 

Zurück
Oben