000
05.02.2004, 23:17 Uhr
BoNeSpiRit
|
Well ich hab hier schon einige Themen zu gefunden, aber irgendwie helfen die mir nicht weiter...
Ich würd gern aus einer Datei Zeilenweise strings auslesen...
Hab den Aho-Corasick implementiert und würd jetzt gerne den Text und die Pattern aus einer Datei und nicht auser Console einlesen...
hab mal angefügt wie es jetzt über die Konsole läuft, damit nen Überblick da is wies gerade funktioniert...
verwende Dev-cpp...
C++: |
//Input printf("\nBitte Text eingeben:"); //Texteingabe; wuerd ich gerne aus Dateieinlesen... scanf("%s", Text); n = strlen( Text );
printf("\nAnzahl der Pattern: "); //# der Pattern scanf("%i", &Anz); //Pattern count
for (int i=0; i<Anz ; i++){ //Patterneingabe; wuerd ich gerne aus einer datei auslesen, wobei jede Zeile ein Pattern is, spart dann auch eingabe der Anzahl der Pattern... printf("\nPattern %i: ",i); scanf("%s", &pattern[i]); while (strlen(pattern[i].s) > n) { //Pattern > Text nicht erlaubt printf("\nPattern %i ist groesser als der Text !!!\nBitte versuchs noch einmal.\n", i, i); printf("\nNeues Pattern %i: ", i); scanf("%s", &pattern[i]); } pattern[i].len = strlen( pattern[i].s ); pattern[i].p = NULL; }
//Output printf( "\nText: %s\n", Text ); for ( int i = 0; i < Anz; i++ ) printf( "Pattern %d: %s\n", i, pattern[i].s ); printf( "\nSearching...\n" ); fflush( stdout );
// und hier nun die Aufrufe für den AC...
macheBaum(); lauf();
if ( pRoot != NULL ) { disposeTree( pRoot ); pRoot = NULL; }
|
Danke euch schonmal im Vorraus |