If abfrage wiederholen



  • Ok anders, formuliert.
    Wie kann ich die If Abfrage nach der Eingabe
    Wiederholen?

    LG Keybladmaster



  • SeppJ schrieb:

    Mach eine Schleife drum!



  • Leider, kommt wen ich etwas eingegeben haben
    die ganze Zeit der Text!
    Habe das ganze mal so angegangen :

    while(werte == false){   
    
           if (input != "")
           {
    
              cout << "This command is in the header file Console Line unavailable please\nchange the privilege to command line" << endl;       
              cout << endl
                   << "ConsoleLine : ";
    
           }
           }
    

    Entschuldigung, wenn ich etwas Begriffstutzig bin..
    Bin noch ganz frischer, anfänger 😞

    LG Keybladmaster



  • werte ändert sich in der Schleife ja auch nicht.



  • Also habe versucht die Werte immer zu Änder..
    Aber trz. funktioniert es nicht...

    while(werte == false){   
    
           if (input != "")
           {
    
              cout << "This command is in the header file Console Line unavailable please\nchange the privilege to command line" << endl;       
              cout << endl
                   << "ConsoleLine : ";
                   werte = false ;
    
           }
           werte = true;
           }
    

    Irgenwie habe ich ein Blackout...
    Weiß nicht direkt was ich machen soll 😞

    LG Keybladmaster



  • Du hast vergessen, input einzugeben. 😉



  • Hä?
    Ich komm nun gar nicht mehr mit...
    Habe eine While Schleife um die Abfrage..
    Habe die Werte geändert...und den cin >> input;
    eingefügt und trz. Klappt es nicht.... 😮 😞

    #include <iostream>
    #include <string>
    #include <conio.h>
    #include <cstdio>
    #include <windows.h> 
    
    using namespace std;
    
    int main(void)
    {
      //Strings
    
      string input;
    
      //Strings
    
      //Bool
    
      bool werte = false;
    
      //bool
    
      cout << "---Welcome to the Windows Administrator Console---" << endl
           << endl
           << endl
           << endl
           << "ConsoleLine : ";
           cin >> input;
           cout << endl;
    
        while(werte == false){   
    
           if (input != "")
           {
    
              cout << "This command is in the header file Console Line unavailable please\nchange the privilege to command line" << endl;       
              cout << endl
                   << "ConsoleLine : ";
                   cin >> input;
                   werte = false ;
    
           }
           werte = true;
           }
    
     cin.sync();       
     cin.get();
     return 0;    
    }
    

    LG Keybladmater



  • Dir fehlen glaube die Grundlagen. Ich habe auch erst versucht mit C++ anzufangen, aber man braucht einfach eine gute Einführung, sonst wird das nichts.

    Deine while-Schleife muss ja daran gekoppelt sein, ob ein Wert eingelesen wurde oder nicht.

    while(cin >> input)
    

    Input wird eingelesen und solange etwas gültiges eingelesen wurde, wird die Schleife wiederholt. Du kannst natürlich auch andere zusätzliche Abbruchbedingungen einbauen.
    Danach kannst du in deiner if-Abfrage überprüfen welchen Wert input hat bzw. haben sollte.



  • Wie schon gesagt "Frischer Anfänger".
    Also habe das ganze mal Umgeschrieben und Getestet.
    Habe aber Festgestellt das ich das Wort 2 mal eingeben muss das
    etwas kommt.Danach klappt es wen ich einmal was schreibe...
    Wie kann ich das Ändern?

    #include <iostream>
    #include <string>
    #include <conio.h>
    #include <cstdio>
    #include <windows.h> 
    
    using namespace std;
    
    int main(void)
    {
      //Strings
    
      string input;
    
      //Strings
    
      //Bool
    
      bool werte = false;
    
      //bool
    
      cout << "---Welcome to the Windows Administrator Console---" << endl
           << endl
           << endl
           << endl
           << "ConsoleLine : ";
           cin >> input;
           cout << endl;
    
        while(cin >> input){   
    
           if (input != "")
           {
              input = "";
              cout << "This command is in the header file Console Line unavailable please\nchange the privilege to command line" << endl;       
              cout << endl
                   << "ConsoleLine : ";
    
           }
           }
    
     cin.sync();       
     cin.get();
     return 0;    
    }
    

    LG Keybladmaster



  • Keybladmaster schrieb:

    cin >> input;
           cout << endl;
           
        while(cin >> input){
    

    🙄



  • Fühle mich gerade ein bisschen Verarscht 😃 😃
    Was soll das Bedeuten?

    LG keybladmaster



  • Das ist einfach ein Teil deines Codes. Du liest einen Wert ein bevor die while-schleife, nochmal etwas einliest.
    Wie gesagt, mit einem guten Buch ist man besser beraten, vor allem für solche grundlegenden Dinge.



  • Ok.
    Habe mich noch mal kurz damit beschäftigt.
    Und ich habe doch Tatsächlich wie ihr schon gesagt
    habt eine Doppel Eingabe gemacht...
    Habe das ganze kurz Behoben und nun Funktioniert es!

    #include <iostream>
    #include <string>
    #include <conio.h>
    #include <cstdio>
    #include <windows.h> 
    
    using namespace std;
    
    int main(void)
    {
      //Strings
    
      string input;
    
      //Strings
    
      //Bool
    
      bool werte = false;
    
      //bool
    
      cout << "---Welcome to the Windows Administrator Console---" << endl
           << endl
           << endl
           << endl
           << "ConsoleLine : ";
    
        while(cin >> input){   
    
           if (input != "")
           {
              input = "";
              cout << "This command is in the header file Console Line unavailable please\nchange the privilege to command line" << endl;       
              cout << endl
                   << "ConsoleLine : ";
    
           }
           }
    
     cin.sync();       
     cin.get();
     return 0;    
    }
    


  • Nur so aus Interesse: was hast du denn vor?

    Sollen da bestimmte Commands eingelesen werden (so wie bei der Windows prompt z.B. ping xxx.com) ?


Anmelden zum Antworten