www.vorhilfe.de
- Förderverein -
Der Förderverein.

Gemeinnütziger Verein zur Finanzierung des Projekts Vorhilfe.de.
Hallo Gast!einloggen | registrieren ]
Startseite · Mitglieder · Impressum
Forenbaum
^ Forenbaum
Status VH e.V.
  Status Vereinsforum

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Suchen
 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 n x n
Matrix n x n < C/C++ < Programmiersprachen < Praxis < Informatik < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "C/C++"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Matrix n x n: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 21:13 Mi 14.11.2007
Autor: Fibonacci-

Aufgabe
Ich weiß zwar nicht, warum mein Beitrag entfernt wurde aber jedenfalls war meine Frage nicht beantwortet... deshalb nochmal:

a) Wie stelle ich eine n x n Matrix mithilfe eines Zeigers dar?
b) Wie kann ich die Matrix "transponieren" und in "Tupelschreibweise" ausgeben?

Wir behandeln zunächst nur Aufgabenteil a)

mein Ansatz wäre zunächst einen Zeiger mit:
double **matrix;
zu definieren...
Damit hätten wir die Zeilen der Matrix.
Durch einen weiteren Zeiger
*matrix [n x n]
Definiere ich die Spalten... dies sieht (bei 3x3) wie folgt aus:

[mm] a_{1,1} [/mm]  -> [mm] a_{1,2} [/mm] | [mm] a_{1,3} [/mm]
[mm] a_{2,1} [/mm]  -> [mm] a_{2,2} [/mm] | [mm] a_{2,3} [/mm]
[mm] a_{3,1} [/mm]  -> [mm] a_{3,2} [/mm] | [mm] a_{3,3} [/mm]

Zunächst die Frage:
Kann ich das so darstellen?


Doppelpost... bitte löschen!
Vorhin war der letzte Thread nicht da :( komisch


        
Bezug
Matrix n x n: Antwort
Status: (Antwort) fertig Status 
Datum: 09:19 Do 15.11.2007
Autor: Martin243

Hallo,

> jedenfalls war meine Frage nicht beantwortet

Doch, hier! Dein Vorschlag geht einfach nicht, weil es um dynamische Speicherallokation geht.


> mein Ansatz wäre zunächst einen Zeiger mit:
> double **matrix;
> zu definieren...

Nochmal: es muss
int **matrix;
heißen!


> Damit hätten wir die Zeilen der Matrix.

Nein! Du hast damit nur einen Zeiger auf weitere Zeiger deklariert, hast dafür aber noch keinen Speicherplatz. Wie willst du denn jetzt auf die einzelnen Zeilen der Matrix zugreifen?


> Durch einen weiteren Zeiger
> *matrix [n x n]
> Definiere ich die Spalten...

So geht das aber gar nicht. Du musst einen neuen Zeiger (anderer Name!) deklarieren und dafür Speicher allozieren.
Im Anschluss müsstest du die Zeiger in matrix (dem ersten Zeigerarray) auf die entsprechenden Zeiger in dem neuen Array setzen. Sonst besteht kein Bezug zwischen den Zeilen und den Matrixeinträgen.

Bitte schau dir nochmal den oben genannten Beitrag an.


Gruß
Martin

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


^ Seitenanfang ^
ev.vorhilfe.de
[ Startseite | Mitglieder | Impressum ]