Registrierung Kalender Mitgliederliste Teammitglieder Suche Häufig gestellte Fragen Zur Startseite

Informatiker Board » Themengebiete » Praktische Informatik » Mehrdimensionales array[][] » Antwort erstellen » Hallo Gast [Anmelden|Registrieren]

Antwort erstellen
Benutzername: (du bist nicht eingeloggt!)
Thema:
Nachricht:

HTML ist nicht erlaubt
BBCode ist erlaubt
Smilies sind erlaubt
Bilder sind erlaubt

Smilies: 21 von 33
smileWinkDaumen hoch
verwirrtAugenzwinkerngeschockt
Mit ZungeGottunglücklich
Forum Kloppebösegroßes Grinsen
TanzentraurigProst
TeufelSpamWillkommen
LehrerLOL HammerZunge raus
Hilfe 
aktuellen Tag schließen
alle Tags schließen
fettgedruckter Textkursiver Textunterstrichener Text zentrierter Text Hyperlink einfügenE-Mail-Adresse einfügenBild einfügen Zitat einfügenListe erstellen CODE einfügenPHP CODE farbig hervorheben
Spamschutz:
Text aus Bild eingeben
Spamschutz

Die letzten 5 Beiträge
eulerscheZahl

code:
1:
2:
3:
4:
5:
6:
7:
for (int i = 0; i < matrix[0].length; i++) {
	int spaltenprodukt = 1;
	for (int j = 0; j < matrix.length; j++) {
		spaltenprodukt *= matrix[j][i];
	}
	ergebnis += spaltenprodukt;
}


Beachte, dass die erste Schleife bis matrix[0].length geht.
unleashed656

ok irgendwie kriege ich immer eine indexoutofbounds exceptions bei den zeilenprodukt.
Hier der Code:

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:

public class summe {

	static int Matrix[][]= {{2,1,1,3},{1,3,2,4},{4,3,1,3}};
	
	
	
	static int produkt(int[][] matrix){
		
		int ergebniss = 0;
		
		//Spaltenprodukt
		for(int i=0;i<matrix.length;i++){
			int spaltenprodukt = 1;
			
			for(int j=0;j<matrix[i].length;j++){
				spaltenprodukt *= matrix[i][j];
			}
			
			ergebniss +=spaltenprodukt;
		}
		
		//Zeilenprodukt
		for(int i = 0;i<matrix.length;i++){
			int zeilenprodukt = 1;			
			for(int j=0;j<matrix[i].length;j++){
				zeilenprodukt *= matrix[j][i];
			}
			ergebniss += zeilenprodukt;
		}
			
		return ergebniss;
	}
	
public static void main(String[] args){
	
	int zahl=produkt(Matrix);
	System.out.print(zahl);
}	
	
}
unleashed656

ah danke, das macht mehr sinn großes Grinsen ...dann werde ich mal die zeilen in angriff nehmen Augenzwinkern
eulerscheZahl

Zieh die Zeile int spaltenprodukt = 1; in die äußere for Schleife rein (also zu Zeile 14). Sonst rechnest du mit dem alten Produkt weiter. Alternativ kannst du es wieder auf 1 setzen, nachdem du das Ergebnis erhöht hast.
unleashed656 Mehrdimensionales array[][]

Hallo, ich habe erneut ein kleines Problem und hoffe ich bin
da wieder bei euch richtig.
Ich habe ein mehrdimensionales array (int[][])
Ich muss daraus nun das spalten und zeilenprodukt bilden. Also alle zahlen in einer Spale
aufmultiplizieren plus das gleicche mit der nächsten spalte und so weiter. Und dann halt alle zahlen in einer zeile multiplizieren + die nächste spalte.


Ich kriege aber immer total falsche Ergebnisse.
Ich habe mich mal zuerst am spaltenprodukt probiert und das zeilenprodukt weggelassen.

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
package sonstiges;

public class summe {

	static int Matrix[][]= {{2,1,1,3},{1,3,2,4},{4,3,1,3}};
	
	
	
	static int produkt(int[][] matrix){
		int spaltenprodukt = 1;
		int ergebniss = 0;
		
		for(int i=0;i<matrix.length;i++){
			
			for(int j=0;j<matrix[i].length;j++){
				spaltenprodukt *= matrix[i][j];
			}
			
			ergebniss +=spaltenprodukt;
		}
			
		return ergebniss;
	}
	
public static void main(String[] args){
	
	int zahl=produkt(Matrix);
	System.out.print(zahl);
}	
	
}


Bitte helft mir weiter...Das spaltenprodukt sollte 66 ergeben.