[C++/Logik]Von Schaltern und Kombinationen

RedWraith

Mitglied
Hallo erstmal !

Vorneweg eins:
Ich weiß nicht genau ob dies das richtige Subforum dafür ist, sollte ich mich geirrt haben, das Ding hier bitte an die richtige Stelle verschieben. Danke !

Also es geht um folgendes:
Ich habe also zum Beispiel 2 Schalter, welche jeweils über 3 Schalterpositionen verfügt. Wenn ich nun alle möglichen Kombinationen (Es müssten 9 an der Zahl sein, dass beide Schalter auf derselben Position stehen ist möglich) ausgeben will, sieht das so aus:

Code:
#include <iostream>

using namespace std;

int main()
{
	int nSchalter = 2;
	int nPositionen = 3;

	cout	<< "Ich habe "<< nSchalter << " Schalter, die jeweils "<< nPositionen << " Positionen(1, 2 und 3) haben.\n"
			<< "Und das sind alle moeglichen Kombinationen:\n"
			<< "\n"
			<< "Moeglichkeit:\tKombination:\n";

	for(int a = 1; a <= nPositionen; a++)
	{
		for(int b = 1; b <= nPositionen; b++)
		{
			cout << "\t     " << ((a - 1) * nPositionen + b) << "\t\t    " << a << b << "\n";
		}
	}

	cout	<< "\n"
			<< "Tada !\n"
			<< "\n";

	system("pause");
}

Ich möchte das Programm nun dahingehend ändern, dass es nicht nur mit 2 Schaltern und 3 Positionen sondern mit variablen Werten funktioniert. Tja, leider steh ich was das anbelangt etwas auf dem Schlauch und hatte gehofft, einer von euch könnte mich in die richtige Richtung stoßen.
 
Ich möchte das Programm nun dahingehend ändern, dass es nicht nur mit 2 Schaltern und 3 Positionen sondern mit variablen Werten funktioniert. Tja, leider steh ich was das anbelangt etwas auf dem Schlauch und hatte gehofft, einer von euch könnte mich in die richtige Richtung stoßen.


Ich weiß jetzt nicht genau, was du meinst.
Meinst du, du willst den Benutzer entscheiden lassen, wieviele Positionen und Schalter es gibt, ohne dass du den Quellcode neu kompilieren musst?

In dem Fall mach es zum Beispiel folgendermaßen (einfach vorher in den Code einfügen):
Code:
int nPositionen,nSchalter;
cout << "Anzahl der Positionen: ";
cin >> nPositionen;
cout << "Anzahl der Schalter: ";
cin >> nSchalter;


By the way: ist es beabsichtigt, dass du zwischen a und b kein Whitespace ausgibst?
Code:
			cout << "\t     " << ((a - 1) * nPositionen + b) << "\t\t    " << a << b << "\n";
 
Zurück