Cod sursa(job #1002860)

Utilizator tudorfrentfrent tudor tudorfrent Data 28 septembrie 2013 22:44:23
Problema Text Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.63 kb
#include <iostream>
#include <fstream>
#include <string>
#include <iomanip>
using namespace std;
ifstream f("text.in");
ofstream g("text.out");
void citireSir(char []);
int main(int argc, char** argv) {
    char sir[1024], ch;
    int i, litere, cuvinte, x;
    
    citireSir(sir);
   // cout << sir << '\t' << strlen(sir) << endl;
    
    litere = cuvinte = 0;
    i = 0;
    ch = sir[i];
    //cout << ch << endl;
    while(ch != '\0') {
        while( (((ch >= 'a') && (ch <= 'z')) || ((ch >= 'A') && (ch <= 'Z'))) && (ch != '\0') ) {
            litere++;
           // cout << "litere=" << litere << endl;
            i++;
            ch = sir[i];
            //if(ch == '\0') break;
           // cout << ch << endl;
            //cout << litere << endl;
        }
        if( ((sir[i-1] >= 'a') && (sir[i-1] <= 'z')) || ((sir[i-1] >= 'A') && (sir[i-1] <= 'Z')) ) {
            cuvinte++;
        }
        //cout << "cuvinte=" << cuvinte << endl;
       // cin >> x;
        while( !(((ch >= 'a') && (ch <= 'z')) || ((ch >= 'A') && (ch <= 'Z'))) ) {
            i++;
            ch = sir[i];
            if(ch == '\0') break;
        }
        
    }
    
    //cout<< "litere=" << litere << endl;
    //cout<< "cuvinte=" << cuvinte << endl;
    cout<<litere/cuvinte;
    
    return 0;
}

void citireSir(char sir[]){
    int i;
    char ch;
    // citire de la tastatura
    i = 0;
    f>> resetiosflags(ios::skipws) >> ch;
   // cout << "ch=" << ch << endl;
    while(ch != '\n') {
        sir[i] = ch;
        i++;
        f>>  resetiosflags(ios::skipws) >> ch;
        //cout << "ch=" << ch << "\t" << "ch=" << (int)ch << endl;
    }
    sir[i] = '\0';
}