#include "stdlib.h"
#include "windows.h"
#include "stdio.h"
#include "conio.h"
#include "time.h"
int main(int argc, char *argv[])
{
int wortok;
FILE* f;
FILE* fa;
int inhalt;
char Abfrage[256];
char Ruckmeldung[256];
int Konj;
f = fopen("Buch.lltv", "r");
fa=fopen("Speicher","w+");
if(f==NULL)
{
printf("Es wurde kein Woerterbuch gefunden. Bitte lade oder erstelle eines.\n Das Programm kann nicht fortfahren.\n\n");
_sleep(5000);
return 0;
}
inhalt=0;
wortok=0;
printf("Bitte gib das gewuenschte Wort ein.\n");
scanf("%s", &Abfrage);
fseek(f,0,SEEK_SET);
inhalt=fgetc(f);
while(wortok==0)
{
do{
inhalt=getc(f);
fprintf(fa,"%c",inhalt);
}while(inhalt!='+');
fseek(fa,0,SEEK_SET);
fgets(Ruckmeldung,256,fa);
fclose(fa);
remove("Speicher");
fa=fopen("Speicher","w+");
fprintf(fa,"%s+",Abfrage);
fseek(fa,0,SEEK_SET);
fgets(Abfrage,256,fa);
if(strcmp(Ruckmeldung, Abfrage)==0)
{
printf("\nWort in Datenbank gefunden:\n");
break;
}
else
{
do
{
inhalt=getc(f);
}while(inhalt!='|');
continue;
}
fclose(fa);
remove("Speicher");
fa=fopen("Speicher","w+");
}
do
{
inhalt=getc(f);
fprintf(fa,"%c",inhalt);
}while(inhalt!=':');
fseek(fa,0,SEEK_SET);
fgets(Ruckmeldung,256,fa);
printf("%s",Ruckmeldung);
fclose(fa);
remove("Speicher");
fa=fopen("Speicher","w+");
do
{
inhalt=getc(f);
fprintf(fa,"%c",inhalt);
}while(inhalt!='*');
fseek(fa,0,SEEK_SET);
fgets(Ruckmeldung,256,fa);
if(strcmp(Ruckmeldung,"1*")==0)
{
printf(" Verb der A-Konj.\n\n");
Konj=1;
}
if(strcmp(Ruckmeldung,"2*")==0)
{
printf(" Verb der E-Konj.\n\n");
Konj=2;
}
if(strcmp(Ruckmeldung,"3*")==0)
{
printf(" Verb der I-Konj.\n\n");
Konj=3;
}
if(strcmp(Ruckmeldung,"4*")==0)
{
printf(" Verb der Kons.-Konj.\n\n");
Konj=4;
}
fclose(fa);
remove("Speicher");
fa=fopen("Speicher","w+");
FILE* Stamm;
Stamm=fopen("Stamm","a+");
do
{
inhalt=getc(f);
fprintf(Stamm,"%c",inhalt);
}while(inhalt!='-');
fseek(fa,0,SEEK_SET);
fgets(Ruckmeldung,256,fa);
//fprintf(Stamm,"%s",Ruckmeldung);
//Konjugationsdienst
FILE* fb;
fb=fopen("Speicher2","w+");
printf("\n\nDer Konjugationsdienst ist nun bereit.\nSyntax-bsp.:\n2S fuer 2. Pers. Singular Aktiv\n\n Dies ist die Omega-Fassung des Programmes. Es stehen nur\n sehr wenige Formen zur Verfuegung.\n\n");
printf("Form?");
scanf("%s",&Abfrage);
//--------------------------------------------------------------------------------------------
if(Konj==1)
{
if(strcmp(Abfrage,"1S")==0)
{
fseek(Stamm,0,SEEK_SET);
fgets(Ruckmeldung,256,Stamm);
printf("\n\n%so",Ruckmeldung);
}
if(strcmp(Abfrage,"2S")==0)
{
fseek(Stamm,0,SEEK_SET);
fgets(Ruckmeldung,256,Stamm);
printf("\n\n%sas",Ruckmeldung);
}
if(strcmp(Abfrage,"3S")==0)
{
fseek(Stamm,0,SEEK_SET);
fgets(Ruckmeldung,256,Stamm);
printf("\n\n%sat",Ruckmeldung);
}
if(strcmp(Abfrage,"1P")==0)
{
fseek(Stamm,0,SEEK_SET);
fgets(Ruckmeldung,256,Stamm);
printf("\n\n%samus",Ruckmeldung);
}
if(strcmp(Abfrage,"2P")==0)
{
fseek(Stamm,0,SEEK_SET);
fgets(Ruckmeldung,256,Stamm);
printf("\n\n%satis",Ruckmeldung);
}
if(strcmp(Abfrage,"3P")==0)
{
fseek(Stamm,0,SEEK_SET);
fgets(Ruckmeldung,256,Stamm);
printf("\n\n%sant",Ruckmeldung);
}
}
if(Konj==2)
{
if(strcmp(Abfrage,"1S")==0)
{
fseek(Stamm,0,SEEK_SET);
fgets(Ruckmeldung,256,Stamm);
printf("\n\n%seo",Ruckmeldung);
}
if(strcmp(Abfrage,"2S")==0)
{
fseek(Stamm,0,SEEK_SET);
fgets(Ruckmeldung,256,Stamm);
printf("\n\n%ses",Ruckmeldung);
}
if(strcmp(Abfrage,"3S")==0)
{
fseek(Stamm,0,SEEK_SET);
fgets(Ruckmeldung,256,Stamm);
printf("\n\n%set",Ruckmeldung);
}
if(strcmp(Abfrage,"1P")==0)
{
fseek(Stamm,0,SEEK_SET);
fgets(Ruckmeldung,256,Stamm);
printf("\n\n%semus",Ruckmeldung);
}
if(strcmp(Abfrage,"2P")==0)
{
fseek(Stamm,0,SEEK_SET);
fgets(Ruckmeldung,256,Stamm);
printf("\n\n%setis",Ruckmeldung);
}
if(strcmp(Abfrage,"3P")==0)
{
fseek(Stamm,0,SEEK_SET);
fgets(Ruckmeldung,256,Stamm);
printf("\n\n%sent",Ruckmeldung);
}
}
if(Konj==3)
{
if(strcmp(Abfrage,"1S")==0)
{
fseek(Stamm,0,SEEK_SET);
fgets(Ruckmeldung,256,Stamm);
printf("\n\n%sio",Ruckmeldung);
}
if(strcmp(Abfrage,"2S")==0)
{
fseek(Stamm,0,SEEK_SET);
fgets(Ruckmeldung,256,Stamm);
printf("\n\n%sis",Ruckmeldung);
}
if(strcmp(Abfrage,"3S")==0)
{
fseek(Stamm,0,SEEK_SET);
fgets(Ruckmeldung,256,Stamm);
printf("\n\n%sit",Ruckmeldung);
}
if(strcmp(Abfrage,"1P")==0)
{
fseek(Stamm,0,SEEK_SET);
fgets(Ruckmeldung,256,Stamm);
printf("\n\n%simus",Ruckmeldung);
}
if(strcmp(Abfrage,"2P")==0)
{
fseek(Stamm,0,SEEK_SET);
fgets(Ruckmeldung,256,Stamm);
printf("\n\n%sitis",Ruckmeldung);
}
if(strcmp(Abfrage,"3P")==0)
{
fseek(Stamm,0,SEEK_SET);
fgets(Ruckmeldung,256,Stamm);
printf("\n\n%siunt",Ruckmeldung);
}
}
if(Konj==4)
{
if(strcmp(Abfrage,"1S")==0)
{
fseek(Stamm,0,SEEK_SET);
fgets(Ruckmeldung,256,Stamm);
printf("\n\n%so",Ruckmeldung);
}
if(strcmp(Abfrage,"2S")==0)
{
fseek(Stamm,0,SEEK_SET);
fgets(Ruckmeldung,256,Stamm);
printf("\n\n%sis",Ruckmeldung);
}
if(strcmp(Abfrage,"3S")==0)
{
fseek(Stamm,0,SEEK_SET);
fgets(Ruckmeldung,256,Stamm);
printf("\n\n%sit",Ruckmeldung);
}
if(strcmp(Abfrage,"1P")==0)
{
fseek(Stamm,0,SEEK_SET);
fgets(Ruckmeldung,256,Stamm);
printf("\n\n%simus",Ruckmeldung);
}
if(strcmp(Abfrage,"2P")==0)
{
fseek(Stamm,0,SEEK_SET);
fgets(Ruckmeldung,256,Stamm);
printf("\n\n%sitis",Ruckmeldung);
}
if(strcmp(Abfrage,"3P")==0)
{
fseek(Stamm,0,SEEK_SET);
fgets(Ruckmeldung,256,Stamm);
printf("\n\n%sunt",Ruckmeldung);
}
}
//--------------------------------------------------------------------------------------------
printf("\n\nDanke fuer die Benutzung des Programmes.\n\n");
fclose(f);
fclose(fa);
fclose(fb);
fclose(Stamm);
remove("Speicher");
remove("Speicher2");
remove("Stamm");
_sleep(100);
system("PAUSE");
return 0;
}