#include<iostream> #include<cstdlib> #include<string> #include<algorithm> using namespace std; int wordcount_TE(string satz) { int words=1; int L=satz.length(); for(int i=0;i<L;i++) { if(satz.at(i)==' ') { words=words+1; } } return words; } int wordcount_Ethon(string satz) { int words = count(satz.begin(), satz.end(), ' '); return words; } int wordcount_SeppJ(string satz) { int words=0; bool last_was_space = true; for(char c : satz) { if(c != ' ') { if (last_was_space) words += 1; last_was_space = false; } else last_was_space = true; } return words; } void vergleich(string satz) { cout << "Satz ist: \"" << satz << "\"\n" << " Phil123 zählt darin " << wordcount_TE(satz) << " Wörter, Ethon zählt " << wordcount_Ethon(satz) << " Wörter, SeppJ zählt " << wordcount_SeppJ(satz) << '\n'; } int main() { vergleich("Hallo Welt"); vergleich(""); vergleich(" "); vergleich(" "); vergleich("Hallo Welt"); vergleich("Hallo"); vergleich(" Hallo"); vergleich("Hallo "); vergleich(" Hallo "); }
Standard input is empty
Satz ist: "Hallo Welt" Phil123 zählt darin 2 Wörter, Ethon zählt 1 Wörter, SeppJ zählt 2 Satz ist: "" Phil123 zählt darin 1 Wörter, Ethon zählt 0 Wörter, SeppJ zählt 0 Satz ist: " " Phil123 zählt darin 2 Wörter, Ethon zählt 1 Wörter, SeppJ zählt 0 Satz ist: " " Phil123 zählt darin 3 Wörter, Ethon zählt 2 Wörter, SeppJ zählt 0 Satz ist: "Hallo Welt" Phil123 zählt darin 3 Wörter, Ethon zählt 2 Wörter, SeppJ zählt 2 Satz ist: "Hallo" Phil123 zählt darin 1 Wörter, Ethon zählt 0 Wörter, SeppJ zählt 1 Satz ist: " Hallo" Phil123 zählt darin 2 Wörter, Ethon zählt 1 Wörter, SeppJ zählt 1 Satz ist: "Hallo " Phil123 zählt darin 2 Wörter, Ethon zählt 1 Wörter, SeppJ zählt 1 Satz ist: " Hallo " Phil123 zählt darin 3 Wörter, Ethon zählt 2 Wörter, SeppJ zählt 1