Hilfe zu FOR



  • hallo leute!
    habe vor kurzem angefangen zu c++ programmieren.
    kann mir einer hierzu weiterhelfen? danke!

    // vektoren.cpp : Definiert den Einstiegspunkt für die Konsolenanwendung.
    // Einfaches Wortspiel/ Wörterbuch

    #include "std_lib_facilities.h"

    int main()
    {
    vector<string>words; //Verwendung Vektor, Typ, Name des Vektors

    string word; //Typ der Variable

    vector<string>dislike(5);
    dislike[0] = "brokkoli";
    dislike[1] = "apfel";
    dislike[2] = "gewitter";
    dislike[3] = "schwein";
    dislike[4] = "spinnen";

    while (cin>>word) //Schleife zum einlesen der Wörter
    words.push_back(word); //Werte werden in den Vektor geschrieben

    cout<<"Anzhal der eingegebenen Woerter: " <<words.size() <<endl;

    for (int i = 0; i<words.size(); ++i){

    for (int j = 0; j<dislike.size(); ++j){

    if (words[i] == dislike[j])
    cout<<words[i] == "xxx\n";
    }
    }

    cout<<"\n";
    keep_window_open();
    return 0;
    }



  • Frage vergessen. 🙄



  • cpp-Tags leider auch vergessen.



  • Fehler gemacht:

    for (int i = 0; i<words.size(); ++i){
      for (int j = 0; j<dislike.size(); ++j){
        if (words[i] == dislike[j])
          cout<<words[i] == "xxx\n";  // cout << words[i] << "xxx\n"
      }
    }
    


  • sry jungs. das programm soll so funktionieren:

    ich gebe ein paar wörter ein und die wörter, die in der dislike liste sind sollen durch "xxx" ersetzt werden. ich weis nicht wie ich die liste ausgeben kann,



  • if (words[i] == dislike[j])
    {
      cout << "Match found: " << words[i]; // nur zur Info, diese Zeile kannst du auch weglassen
      words[i] = "xxx\n";
    }
    


  • vielen danke. hab den fehler gefunden!

    if (words[i] == dislike[j]){
    words[i] = "xxx"; //hatte hier ein = zuviel



  • xXyronx schrieb:

    sry jungs. das programm soll so funktionieren:

    ich gebe ein paar wörter ein und die wörter, die in der dislike liste sind sollen durch "xxx" ersetzt werden. ich weis nicht wie ich die liste ausgeben kann,

    Du drückst dich sehr ungenau aus.
    Was willst du?

    * Die Liste ausgeben, und für die Ausgabe die bösen Wörter durch "xxx" ersetzen (sonst aber nichts modifizieren)
    * Die Liste ausgeben und VOR der Ausgabe die bösen Wörter im Array words[] ersetzen, so dass sie einerseits als "xxx" ausgegeben werden und dann auch in words[] als "xxx" stehen
    * Nur die bösen Wörter in words[] durch "xxx" ersetzen, ohne irgendwas auszugeben


Anmelden zum Antworten