Cod sursa(job #27408)

Utilizator AdixSuciu Adrian Adix Data 6 martie 2007 13:41:15
Problema Text Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.99 kb
#include <stdio.h>
#include <string.h>
char sir[10004],sir1[10004];
long spatii,nrcuvinte;
void citire(){
     FILE *in;
     in=fopen("text.in","r");
     fgets(sir,1000002,in);
     fclose(in);
     }

void procesare(){
long i,j,k=0;
		 for(i=1;i<strlen(sir);i++){
		 j=i-1;
				if(
				(sir[i]==' '||sir[i]=='-'||sir[i]=='!'||sir[i]=='?'||sir[i]==','||sir[i]=='.')
						&&
				(sir[j]==' '||sir[j]=='-'||sir[j]=='!'||sir[j]=='?'||sir[j]==','||sir[j]=='.')
				)continue;
				else {if(sir[i]==' '||sir[i]=='-'||sir[i]=='!'||sir[i]=='?'||sir[i]==','||sir[i]=='.'){
						 sir1[k]=' ';spatii++;}
						 else  sir1[k]=sir[i];
											 }
					k++;}
				 sir1[k+1]='\0';
          
     }

void scriere(){
		 FILE *out;
		 long lungime;
		 out=fopen("text.out","w");
		 lungime=strlen(sir1);
		 if(sir1[lungime]==' '){ lungime--;spatii--;}
		 fprintf(out,"%ld", (lungime-spatii)/spatii);
     }
int main(){
    citire();
    procesare();
    scriere();    
 return 0;   
}