www.vorkurse.de
Ein Projekt von vorhilfe.de
Die Online-Kurse der Vorhilfe

E-Learning leicht gemacht.
Hallo Gast!einloggen | registrieren ]
Startseite · Mitglieder · Teams · Forum · Wissen · Kurse · Impressum
Forenbaum
^ Forenbaum
Status Mathe-Vorkurse
  Status Organisatorisches
  Status Schule
    Status Wiederholung Algebra
    Status Einführung Analysis
    Status Einführung Analytisc
    Status VK 21: Mathematik 6.
    Status VK 37: Kurvendiskussionen
    Status VK Abivorbereitungen
  Status Universität
    Status Lerngruppe LinAlg
    Status VK 13 Analysis I FH
    Status Algebra 2006
    Status VK 22: Algebra 2007
    Status GruMiHH 06
    Status VK 58: Algebra 1
    Status VK 59: Lineare Algebra
    Status VK 60: Analysis
    Status Wahrscheinlichkeitst

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Neuerdings beta neu
 Forum...
 vorwissen...
 vorkurse...
 Werkzeuge...
 Nachhilfevermittlung beta...
 Online-Spiele beta
 Suchen
 Verein...
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Weitere Fächer:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
Forum "C/C++" - matrix drucken
matrix drucken < C/C++ < Programmiersprachen < Praxis < Informatik < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "C/C++"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

matrix drucken: korrektur
Status: (Frage) beantwortet Status 
Datum: 13:45 Sa 30.01.2010
Autor: nana

Hallo! Ich hatte als Aufgabe eine Matrix zu drucken und zu transponieren, hier geht es aber eigentlich nur um den Druck!
An sich wird alles kompiliert und ich finde auch keinen Fehler (ich hab nur die Methode print implementiert, alles andere war shcon vorgegeben), die Methode ist auch wirklich einfach aber seltsamerweise ist das Ergebnis eine vollkommen andere Matrix als in der main-funktion angegeben...
und zwar
1,1,1,1,1,
1,1,1,2,3,
1,1,3,0,1,
und ich weiß nicht wie auch immer das Programm darauf gekommen ist....ich hoffe ihr findet den Fehler!!
Danke!!!


#include <iostream>
using namespace std;


void print(int matrix[], int m, int n)
{
for (int i=0; i<m; i++)
{
for (int j=0; j<n;j++)
{
cout<< matrix [i*j]<< ",";
}
cout<< endl;
}
}


int main(void)
{
const int m=3;
const int n=5;
int matrix[m*n] =
{
1,1,1,2,3,
0,0,1,1,2,
0,0,0,0,1
};
print(matrix, m, n);
return 0;
}

        
Bezug
matrix drucken: Antwort
Status: (Antwort) fertig Status 
Datum: 14:35 Sa 30.01.2010
Autor: Karl_Pech

Hallo nana,


1: > void print(int matrix[], int m, int n) 
2: > {
3: >  for (int i=0; i<m; i++)
4: >   {
5: >   for (int j=0; j<n;j++)
6: >   {
7: >   cout<< matrix [i*j]<< ",";


Solange die innere j-Schleife ausgeführt wird, ist i auf einen Wert zwischen 0 und m-1 gesetzt. Was passiert denn z.B., wenn i = 0 ist? Dann gilt für beliebige j: 0*j=0. D.h. du greifst ständig auf das gleiche 0-te Element des eindimensionalen Arrays matrix zu. Leider habe ich im Moment keine Möglichkeit es zu testen, aber versuch' es mal mit i*n + j statt i*j. Ich denke, dann sollte es klappen, denn jede Zeile hat die Breite n. Du springst damit immer zum Anfang der i-ten Zeile und gehst dann noch j Schritte weiter in der Horizontalen.



Viele Grüße
Karl




Bezug
                
Bezug
matrix drucken: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 16:20 Sa 30.01.2010
Autor: nana

Hey, es ist mir inzwischen auch selbst aufgefallen, hab matrix [a*b] tdm wie eine matrix [a][b] behandelt...doof von mir!!!
Vielen Dank für die schnelle Antwort!
lg, nana

Bezug
Ansicht: [ geschachtelt ] | ^ Forum "C/C++"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
www.vorkurse.de
[ Startseite | Mitglieder | Teams | Forum | Wissen | Kurse | Impressum ]