cout über for-Schleife
-
Hi erstmal, bin Anfänger und bekomm folgenden Code nicht richtig in Gang...
Möchte in einer Win32-Console-App eine Zeichenfolge (Wort) , 1. Zahl, 2. Zahl einlesen. Ausgegeben werden soll Das eingegebene Wort, die Zeichenfolge die sich zwischen den Positionen von der 1. und der 2. Zahl befinden.#include <iostream.h> void main() { char Wort1[60]; int Zahl1; int Zahl2; cout << endl << "Wort eingeben: " << endl; cin >> Wort1; cout << "Zeichenkette anzeigen von: "; cin >> Zahl1; cout << " bis: "; cin >> Zahl2; for (Zahl1; Zahl1 > Zahl2; Zahl1++); { cout << Wort1[Zahl1 - 1] << endl; }; }Was bitte stimmt nicht??? Er gibt mir nur das Zeichen bei Zahl1 aus. Irgendwie durchläuft er die for-Schleife nicht richtig... Danke im voraus.
Mfg N8walk3r
-
Versuch's mal mit einem < als Schleifenbedingung - for() wird so lange ausgeführt, wie diese Bedingung wahr ist. (und außerdem hast du ein paar Semikolons zu viel gesetzt - der Rumpf der for-Schleife ist eine leere Anweisung und der cout-Block wird nach Ende der Schleife ausgeführt)
PS: Und gewöhn dir gleich saubere Porgrammierung an, bevor sich dieser Stil festsetzt - es heißt "#include <iostream>" (zusammen mit std::cout) und "int main()". Und anstelle des char-Arrays solltest du std::string verwenden - ist sicherer und leichter zu handhaben.
-
Klappt leider auch nicht wirklich... Ist dasselbe in grün...
Vorher hat er mir immer das Zeichen ausgegeben, dass dann dem Wert Zahl1 entspricht. Also Beispiel:Wort: Microsoft
ausgabe von: 2
bis: 4vorher: "i" wurde ausgegeben
nachher: "r" wurde ausgegebenirgendwo funktioniert die Schleife nicht richtig.
-
for (...) KEIN SMIKOLON {....}
-
Mach einfach
#include <iostream> using namespace std; int main() { char wort[10] = "ABCDEFGHI"; int Zahl1, Zahl2; cout<<"Bitte zwei Zahlen eingeben, erste Zahl: "; cin>>Zahl1; cout<<"\n"<<"Zahl2: "; cin>>Zahl2; cout<<"\n"; for(zahl1 > zahl2; --zahl1) { cout<<wort[zahl1]<<endl; } return 0; }
-
C**++**:
#include <string> #include <iostream> int main( ) { std::string word; std::string::size_type begin, end; std::cin >> word; std::cin >> begin; std::cin >> end; std::cout << word.substr( begin, end - begin - 1 ) << std::endl; }greetz, Swordfish