2 Variablen in eine if abfrage

01/22/2014 18:30 FaYoGaming#1
Hi meine Frage ist: Wie bekomme ich es hin das in einer if abfrage 2 Variablen stehen z.B.:

Code:
if(Variable == 0 und Variable2 == 0)
cout << "Stop!!!!" << endl;
also wie wird das und in der if abfrage geschrieben?

mfg FaYo
01/22/2014 18:42 Dr. Coxxy#2
Code:
if (Variable == 0 && Variable2 == 0)
gibt auch noch '||' für logisches oder und '!' für logisches nicht.
01/22/2014 19:05 FaYoGaming#3
ok danke

Habe noch eine Frage. Ich möchte jetzt das die for schleife unterbrochen wird sobald Variable und Variable2 0 entsprechen aber wenn ich break eingebe tut sich die Schleife bei 0 auch nicht abbrechen
01/22/2014 20:32 LcPlayer1#4
Ich würde da einfach ne While-Schleife nehmen:
Code:
while (var1 != 0 && var2 != 0)
{
//do something...
}
// do something else...
01/22/2014 20:44 snow#5
Wie sieht denn dein Code aus?

Code:
for (int i = 0; i < value && var1 != 0 && var2 != 0; ++i)
wäre eine Option, falls du deine Laufvariable benötigst, ansonsten geht auch die while-Schleife von LcPlayer1.
01/22/2014 20:57 FaYoGaming#6
Edit: Code wurde rausgenommen weil ich das Programm für 1 eGold verkaufe :D
01/22/2014 21:10 LcPlayer1#7
Also erstmal würde ich deine Variablen als integer deklarieren, da du sowieso nur mit Ganzzahlen rechnest.

Mit einer While-Schleife könntest du das dann so umsetzen:
Code:
#include <iostream>
#include <Windows.h>

using namespace std;

int sek = 60;
int zeitinmin;
int milisek = 10;

int main()
{
	cout << "Gib deine Zeit an: ";
	cin >> zeitinmin;
	zeitinmin -= 1;
	while (zeitinmin > 0 && sek > 0)
	{
		if(milisek == 0)
		{
			sek -= 1;
			milisek = 10;
			cout << "Noch: " << zeitinmin << " Minuten und " << sek << " Sekunden" << endl;
		}
		if(sek == 0)
		{
			zeitinmin -= 1;
			sek = 60;
		}
		milisek -= 1;
		Sleep(100);
	}
	cout << "Ende!";
	getchar();
	return 0;
}
01/22/2014 21:14 FaYoGaming#8
oh danke ich hatte das noch nicht mit einer while schleife versucht ^^
01/22/2014 21:21 LcPlayer1#9
Code:
if(zeitinmin == 0 && sek == 0)
		{
			cout << "ENDE!!!";
                        break;
		}
Diese if-Anweisung wird übrigens nie ausgeführt, weil die Bedingung nie wahr ist.Dadurch, dass du die Minuten immer gleich um 1 heruntersetzt, wenn die Sekunden auf 0 sind, sind sie im Moment der Überprüfung nie gleichzeitig 0.
01/22/2014 21:27 FaYoGaming#10
wenn ich jetzt aber in der Konsole 1 angebe für 1min. dann steht sofort "Ende!" da. Obwohl ich zeitinmin > 0 && sek > 0 benutze O.o?

Ich habe jetzt wieder meine for schleife rein getan und nur die if abfrage bearbeitet ^^ jetzt funktioniert alles:

Code:
		
{
cout << "Habe Code rausgenommen ^^" << endl;
		}
01/22/2014 21:44 LcPlayer1#11
Ja, ich merke gerade, dass die &&-Verknüpfung hier auch falsch ist. Wenn man die zu ner ||-Verknüpfung ändert und dann noch die beiden if-Anweisungen vertauscht, sollte es auch mit der while-Schleife funktionieren.
Alternativ könnte man auch in der zweiten if-Anweisung eine Überprüfung der Minuten auf 0 einbauen.
Code:
if (sek == 0 && zeitinmin > 0)
01/23/2014 10:16 .Marcel'#12
Nimm das using namespace std; raus und schreibe so Beispiel:
PHP Code:
std::cout << "blablabla" << std::endl