Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > C/C++
You last visited: Today at 23:12

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



C++ Mehrdimensionale Arrays

Discussion on C++ Mehrdimensionale Arrays within the C/C++ forum part of the Coders Den category.

Reply
 
Old   #1
 
Polake1's Avatar
 
elite*gold: 0
Join Date: Mar 2009
Posts: 320
Received Thanks: 207
C++ Mehrdimensionale Arrays

Hey Leute,
Ich lern C++ schon seit 2 Monaten und bin jetzt bei den Arrays und Strukturen
(Vll. brauchte ich ein bissl. lange,aber dafür behersche ich das gelernte zu 100%).
und zwar habe ich da ein BspQuelltext:


Code:
#include <iostream>

using namespace std;

// Hauptprogramm
//
int main ()
{
	// Konstanten
	//
	const int Breite = 3; // Breite der Karte
	const int Hoehe = 3;  // Hoehe der Karte

	// Variablen
	//
	int Karte[Breite][Hoehe];  // Zweidimensionales Array für die Karte
	int x, y;                  // Schleifenzähler
	int Zaehler = 0;           // Zum Füllen der Karte

	// Karte mit Werten füllen
	for (y=0; y<Hoehe; y++)
	{
		for (x=0; x<Breite; x++)
		{
			Karte[x][y] = Zaehler;
			Zaehler++;
		}
	}

	// Karte ausgeben
	for (y=0; y<Hoehe; y++)
	{
		for (x=0; x<Breite; x++)
		{
			cout << Karte[x][y];
		}

		cout << endl;
	}

	return 0;
}

kann mir jmd. diesen Quelltext vll. Schritt für Schritt erklären
ich weiß das es vll. bissl aufwendig ist aber wäre furchtbar dankbar
Schonmal im voraus DANKE!

MfG
Polake1
Polake1 is offline  
Old 08/13/2011, 18:28   #2



 
Aimless Angel's Avatar
 
elite*gold: 1725
Join Date: Dec 2005
Posts: 39,170
Received Thanks: 16,159
ich bin jetzt nicht der oberpro aber das hier:

char Name[30];

ist ja nun die deklaration einer 1dimensionalen matrix!

EDIT: btw wenn du schon mehrere monate c++ machst, dann solltest du doch alles kennen! sind doch nur ein paar schleifen!
Aimless Angel is offline  
Old 08/13/2011, 19:25   #3
 
Polake1's Avatar
 
elite*gold: 0
Join Date: Mar 2009
Posts: 320
Received Thanks: 207
Sry falscher Quelltext
Jetzt richtiger
Polake1 is offline  
Old 08/13/2011, 19:51   #4
 
elite*gold: 0
Join Date: Mar 2011
Posts: 519
Received Thanks: 116
Quote:
#include <iostream>

using namespace std;
Hier geschieht nichts anderes, als dass die Standardlibrary eingebunden wird. Eine Library enthält schon vorgefertigten Code und Funktionen, die du im Nachhinein nutzen kannst. Der Namespace sagt, in welchem Namensraum wir uns befinden.

Quote:
// Hauptprogramm
//
int main ()
{
Hier wird dem Programm bescheid gesagt, dass der auszuführende Code jetzt kommt. Also ab hier beginnt dein Programm.

Quote:
// Konstanten
//
const int Breite = 3; // Breite der Karte
const int Hoehe = 3; // Hoehe der Karte
Konstanten enthalten Werte die konstant bleiben, sprich nicht verändert werden.

Quote:
// Variablen
//
int Karte[Breite][Hoehe]; // Zweidimensionales Array für die Karte
int x, y; // Schleifenzähler
int Zaehler = 0; // Zum Füllen der Karte
Variablen sind nichts anderes als Speicherplätze, die gewisse Informationen tragen. Wenn ich das richtig sehe, werden sie hier nur initialisiert.

Quote:
// Karte mit Werten füllen
for (y=0; y<Hoehe; y++)
{
for (x=0; x<Breite; x++)
{
Karte[x][y] = Zaehler;
Zaehler++;
}
}
Hier werden die vorher instanziierten Variablen mit Werten gefüllt. Das geschieht in einer Schleife. Die Bedingung ist, dass y, den Wert 3 enthält. Darin ist noch eine weitere Schleife, die haben will, dass x, 3 ist.

Quote:
// Karte ausgeben
for (y=0; y<Hoehe; y++)
{
for (x=0; x<Breite; x++)
{
cout << Karte[x][y];
}

cout << endl;
}
Durch cout werden die werte ausgegeben, das kann man sich einfach merken, nämlich hört sich cout beim aussprechen so an "see out"(guck raus).

Quote:
return 0;
}
"return 0" wird returnes(zurückgegeben), wenn das Programm alles ohne Schwierigkeiten oder Fehler ausführen konnte.

Ich hoffe ich konnte dir helfen... Falls du Hilfe bei den Schleifen brauchst, schreib einfach.
LostHope. is offline  
Thanks
1 User
Old 08/13/2011, 20:23   #5
 
Polake1's Avatar
 
elite*gold: 0
Join Date: Mar 2009
Posts: 320
Received Thanks: 207
Vll. hast du mir nicht ganz geholfen aber für den Aufwand schonma thx.
Mein Problem liegt eher bei den Arrays also die "auffüllung".
Diesen Teil verstehe ich eher nicht:


Quote:
for (y=0; y<Hoehe; y++)
{
for (x=0; x<Breite; x++)
{
Karte[x][y] = Zaehler;
Zaehler++;
}
}

// Karte ausgeben
for (y=0; y<Hoehe; y++)
{
for (x=0; x<Breite; x++)
{
cout << Karte[x][y];
}

cout << endl;
}
Polake1 is offline  
Old 08/13/2011, 20:48   #6
 
elite*gold: 0
Join Date: Mar 2011
Posts: 519
Received Thanks: 116
Quote:
for (y=0 "y" wird der Wert "0" zugewiesen; y<Hoehe;Die Bedingung hier ist jetzt, dass die Höhe größer als "y" ist. y++Hier wird gesagt, was getan werden muss, also y muss erhöht werden.)
{
for (x=0; x<Breite; x++)
{
Karte[x][y] = Zaehler;
Zaehler++;
}
}

// Karte ausgeben
for (y=0; y<Hoehe; y++)
{
for (x=0; x<Breite; x++)
{
cout << Karte[x][y];
}

cout << endl;
}
wenn du es nicht verstanden hast, musst du dir einfach noch einmal angucken was schleifen machen.
LostHope. is offline  
Old 08/14/2011, 04:24   #7
 
elite*gold: 42
Join Date: Jun 2008
Posts: 5,425
Received Thanks: 1,888
Code:
	for (y=0; y<Hoehe; y++)
	{
		for (x=0; x<Breite; x++)
		{
			Karte[x][y] = Zaehler;
			Zaehler++;
		}
	}
Karte[0][0] = 0;
Karte[1][0] = 1;
Karte[2][0] = 2;
Karte[0][1] = 3;
Karte[1][1] = 4;
Karte[2][1] = 5;
Karte[0][2] = 6;
Karte[1][2] = 7;
Karte[2][2] = 8;

Mit jeder For-Schleife wird jeweils eine Dimension des Arrays durchlaufen. Du könntest das ganze mit einem Haus vergleichen.
Haus[4][2] würde einem Haus mit 4 Stockwerken und 2 Räumen/Wohnungen pro Stockwerk entsprechen. Die erste Zahl gibt das Stockwerk an, die 2. den Raum.

Code:
for(int stockwerk = 0;stockwerk<4;stockwerk++)
{
    for(int wohnung = 0;wohnung<2;wohnung++)
    {
           Haus[stockwerk][wohnung] = ...
     }
}
@LostHope Selten so lustigen bullshit gelesen, thanks :>
MoepMeep is offline  
Thanks
1 User
Old 08/14/2011, 08:40   #8
 
Polake1's Avatar
 
elite*gold: 0
Join Date: Mar 2009
Posts: 320
Received Thanks: 207
Danke MoepMeep darum gings mir zwar habe ich das schon gestern Abend verstanden aber du hast die beste Hilfe gegeben
Thx.
Polake1 is offline  
Reply

Tags
c++ problem


Similar Threads Similar Threads
C++ Fragen | Arrays & struct
06/16/2011 - C/C++ - 3 Replies
Und zwar habe ich 2 Fragen! Arrays: -------------------------------- struct:
vereinfachen mit arrays
02/03/2011 - AutoIt - 2 Replies
ich versuche grad das hier zu vereinfachen: $Fach1=IniRead("C:\info.ini","Fach ","1","") $Fach2=IniRead("C:\info.ini","Fach ","2","") $Fach3=IniRead("C:\info.ini","Fach ","3","") $Fach4=IniRead("C:\info.ini","Fach ","4","") $Fach5=IniRead("C:\info.ini","Fach ","5","") $Fach6=IniRead("C:\info.ini","Fach ","6","") $Fach7=IniRead("C:\info.ini","Fach ","7","") $Fach8=IniRead("C:\info.ini","Fach ","8","")
Arrays! Hilfe!
06/29/2010 - AutoIt - 13 Replies
Hallo e*pvp, Es ist mir jetzt peinlich aber irgendwann musste ich es fragen! Also Ich habe ein Problem undzwar versteh ich nicht was Arrays sind. Ich versteh den Sinn nicht und nicht wie man sie Anwenden kann! Die ganzen Texte aus Wikipedia und Arrays Tutorials helfen mit nicht! Bitte hilft mir was genau Arrays sind und wie man sie sinnvoll anwenden kann! Ich hoffe einer kann mir helfen :( !
[C++] Sortieren von zufällig erstellten Arrays.
03/18/2009 - C/C++ - 4 Replies
-



All times are GMT +1. The time now is 23:12.


Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2025 elitepvpers All Rights Reserved.