C++ problem


 
Neues Thema eröffnen   Neue Antwort erstellen    Webmaster Forum -> Computer & Internet
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
[BsF] Metzler
Mitglied

BeitragC++ problem Antworten mit Zitat

axinio Internet Marketing
Hallo, ich hab ein Problem... Ich muss die Wörter einer Eingabe zählen, die über "cin.getline(eingabe,80);" eingeben wurde. Bis jetzt hab ich leider keine zufreidenstellenden Lösung gefunden.
13 Nov 2005 18:36
Benutzer-Profile anzeigen Private Nachricht senden
axinio Internet Marketing
V4hn
Moderator

Beitrag Antworten mit Zitat

es wird noch string.h benötigt, für strlen()...
Code:

int wordcount(char *eingabe, int x){
 int i, words=0, sz=1;
 cin.getline(eingabe, x);
 for(i = 0; i <= strlen(eingabe); i++){
   if((zeileninhalt[i] == ' ' || zeileninhalt[i] == '\t' || zeileninhalt[i] == '\0') && sz == 0){
     words++;
     sz = 1;
   }
   }
   else {
    sz = 0;
 }
return words;
}

hoffe das reicht dir Wink, is aber noch ausbaubar(zum Beispiel Wort erst ab 2 Zeichen^^).
hab ihn aber nicht testen können...
kann nicht auf jeden Rechner an dem ich sitze n Compiler ziehen Wink

_________________
14 Nov 2005 09:14
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
[BsF] Metzler
Mitglied

Beitrag Antworten mit Zitat

So wie das jetzt ist funst das nicht weil er ja mit "zeileninhalt" nichst anfangen kann... aber es gib, so wie ich das jetzt sehe, auch das Problem wenn zb. 2 Leerzeichen hintereinander in der Eingabe kommen.
Das ist das was ich jetzt geschreiben hatte:
Zitat:
#include <cstdlib>
#include <iostream>
#include <cstring>

using namespace std;

int laenge,zaehler=1,y,x;
char eingabe[80]={" "};


int main(int argc, char *argv[])
{
cin.getline(eingabe,80);

laenge=strlen(eingabe);

for (x=0;x<=laenge;x++)
{ if ((eingabe[x]!=' ') && (eingabe[x+1]==' ') && (eingabe[x+2]!=' '))
zaehler=zaehler+1;
}

cout << "\nEs sind " << zaehler << " Woerter\n";
cout << "Der eingebene Satz enthaelt: " << strlen(eingabe) << " Woerter\n";
cout << "Ende\n\n";
system("PAUSE");
return EXIT_SUCCESS;
}
14 Nov 2005 16:45
Benutzer-Profile anzeigen Private Nachricht senden
V4hn
Moderator

Beitrag Antworten mit Zitat

sry, hab den code nur von nem andern code von mir genommen und kurz umgeschrieben... Embarassed
hier is der richtige:
Code:
int wordcount(char *eingabe, int x){
 int i, words=0, sz=1;
 cin.getline(eingabe, x);
 for(i = 0; i <= strlen(eingabe); i++){
   if((eingabe[i] == ' ' || eingabe[i] == '\t' || eingabe[i] == '\0') && sz == 0){
     words++;
     sz = 1;
   }
   }
   else {
    sz = 0;
 }
return words;
}

gibt kein Problem mit dem code, soweit ich das sehe:
sz is der indikator und bei einem sonderzeichen wird der 1, sodass er erst weiterzählt, wenn andere Zeichen als Trennzeichen zwischen wörtern kommen...
und das statt zeileninhalt eingabe muss, hättest du auch selbst rauskriegen können Wink blöde Schusligkeit...^^

_________________
14 Nov 2005 18:43
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
[BsF] Metzler
Mitglied

Beitrag Antworten mit Zitat

Jo, thx schon mal hierfür Wink
bin ja noch n c++ newbie Very Happy
14 Nov 2005 19:37
Benutzer-Profile anzeigen Private Nachricht senden
V4hn
Moderator

Beitrag Antworten mit Zitat

eigendlich schreib ich auch c^^.
aber sooo große unterschiede gibt es da ja doch nicht... Wink
außerdem sind codesprachen eh schnell gelernt, wenn man erstmal eine kann...
helf doch gerne Smile

_________________
15 Nov 2005 14:31
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
axinio Internet Marketing
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Webmaster Forum -> Computer & Internet Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  

Ähnliche Beiträge
Thema Webmaster Forum Antw. Autor Verfasst am
Keine neuen Beiträge Problem bei Berechnung bzw Ausgabe PHP / MySQL 1 Gast 24 Sep 2011 12:32 Letzten Beitrag anzeigen
Keine neuen Beiträge Footer CSS Problem mit Breite CSS 2 jrothhardt 27 Feb 2011 21:29 Letzten Beitrag anzeigen
Keine neuen Beiträge Problem mit Auswahlliste Javascript 4 Arenicola 31 Jan 2011 20:34 Letzten Beitrag anzeigen
Keine neuen Beiträge Problem mit kopieren oder umbenennen PHP / MySQL 4 Werner 12 Dez 2010 09:57 Letzten Beitrag anzeigen
Keine neuen Beiträge Problem mit php-Menü PHP / MySQL 1 Patrick 23 Nov 2010 13:49 Letzten Beitrag anzeigen