Cod sursa(job #493910)

Utilizator ms-ninjacristescu liviu ms-ninja Data 19 octombrie 2010 20:57:58
Problema Text Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.88 kb
#include <fstream>
using namespace std;
int v[10];

int main()
{
	int n, a=0, b=0;
	ifstream fin("text.in");
	ofstream fout("text.out");
	
	char c, c1, c2;
	
	
	c=fin.get();
	c1=fin.get();
	c2=fin.get();
	
	v[1]=c;
	v[2]=c1;
	v[3]=c2;
	
	if(isalpha(v[1]))
			++a;
	if(isalpha(v[2]))
			++a;
	if(isalpha(v[3]))
			++a;
		
	if( v[2]==45 &&  isalpha( v[1] ) && isalpha( v[2] ) )
			++b;
	
	if(v[2]==45 && ('a'<=v[1]<='z' || 'A'<=v[1]<='Z') && ('a'<=v[3]<='z' || 'A'<=v[3]<='Z'))
			++b;
	
	while((c=fin.get()) && (c!=EOF))
	{
		if(isalpha(c))
			++a;
		if(c!=45 && c<='A')
			++b;
		int ok=0;
		if( v[2]==45 &&  isalpha( v[1] ) && isalpha( v[3] ) )
		{
			++b;
			ok=1;
		}
		
		
		v[1]=v[2];
		v[2]=v[3];
		v[3]=c;
		
		if(ok==0)
			if( v[2]==45 &&  isalpha( v[1] ) && isalpha( v[3] ) )
				++b;
	
	}
	
	
	
	fout<<a/b;
	
	
	return 0;
}