java-Methoden, die Multiplikation von Elementen in einem array mit Hilfe einer Schleife
Definieren Sie eine Java-Methode namens weightedSum (), der zwei integer-arrays als Argumente. Die
die Methode verwendet eine Schleife multipliziert entsprechende Elemente der beiden arrays zusammen (d.h., es vermehrt sich das erste argument von jedem array zusammen, gefolgt von multiplizieren, das zweite element jedes Arrays zusammen, und so weiter) und gibt die Summe dieser Produkte (die ebenfalls eine ganze Zahl). Sie können davon ausgehen, dass beide arrays gleich lang sind.
public int weightedSum(int [] a ,int [] b)
{
int value;
int sum ;
for (int i = 0 ; i < a.length ; i++)
{
value = a[i] * b [i];
value = value +value ;
}
return value;
Bin ich Probleme beim schreiben diese Methode für meine Aufgabe . Ich unter stehen, es akzeptiert zu arrays, aber ich habe Probleme beim schreiben der Schleife selbst, so dass Sie vermehrt sich jedes einzelne element des Arrays mit seinem Gegenstück im Gegenteil-array pos [1] * pos [1], und fügen Sie dann die beiden Werte togather mit pos [2] + pos[2] und um die Summe für alle Werte
- Tipp: du hast eine variable namens
sum
, aber Sie nutzen Sie nicht... - testen Sie Ihre Methode, verwenden Sie einen ähnlichen drucken von Nachrichten wie hier beschrieben - docs.oracle.com/javase/tutorial/java/nutsandbolts/arrays.html - um zu verstehen, was passiert, in jeder iteration. Beginnen Sie mit 2 arrays mit 3 Elementen definiert, die in jedem und fügen Sie einige drucken in Ihrem code, um es zu verstehen.
Du musst angemeldet sein, um einen Kommentar abzugeben.
unten sind die erforderlichen änderungen in Ihrem code. Im Grunde haben Sie nie aktualisiert die variable Summe, nachdem Sie berechnen das Produkt der entsprechenden Elemente in den beiden arrays. Auch Sie könnte verwenden möchte, long-Datentyp zum speichern des Ergebnisses der Summe & das Produkt als int-Wert könnte überlaufen, wenn die Elemente im array sind ausreichend groß.
sum
ist nicht definitiv zugewiesen. (Ich würde auch den Bereich ändern, dervalue
, aber das ist eine etwas andere Sache.)Versuchen Sie dies:
Meisten der code korrekt aussieht, aber die zweite Zeile in der Schleife nicht verändert werden, der Wert der variable, die variable Summe aktualisiert werden soll, mit dem Wert.
so etwas wie Summe += Wert.
dann wieder Summe.
Änderung:
Auch initialisieren
value
zu0
bevor Sie es verwenden.Entfernen Sie auch die
sum
variable.sum
variable; es bezog sich auf die Summe der Werte, was in der Frage gefragt wurde. Peter, die erste Antwort kam nicht zurück die Summe, die so falsch war.