Cod sursa(job #1352261)

Utilizator RenataRenata Renata Data 21 februarie 2015 12:16:24
Problema Convertor Scor 50
Compilator cpp Status done
Runda rosedu_cdl_2015 Marime 1.24 kb
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
using namespace std;
FILE *g;
void analiza_cuvinte(char sir[],int ok)
{
  char sep[8]={',','.',':','"','[','{','\n'},cuvant[100],
  alfabet[100]="QWERTYUIOPASDFGHJKLZXCVBNMqwertyuiopasdfghjklzxcvbnm1234567890";
  char *p;
  int nr=ok;
  p=strtok(sir,sep);
  while(p)
  {
       strcpy(cuvant,p);
       while(cuvant[0]==' ')
        strcpy(cuvant,cuvant+1);
       if(strlen(cuvant)!=0&&strchr(alfabet,cuvant[0]))
         {
           if(nr%2==0)
             fprintf(g,"%s,",cuvant);
           nr++;
         }
       if(strchr(cuvant,'}')!=0)
        {
            if(ok==0)
                break;
            else
                fprintf(g,"\n");
        }
       p=strtok(NULL,sep);
  }
}
int main ()
{
  FILE *f;
  char *sir,*sir2;
  long lungime_f;
  f=fopen("convertor.in","r");
  g=fopen("convertor.out","w");
  fseek(f, 0, SEEK_END);
  lungime_f = ftell(f);
  fseek(f, 0, SEEK_SET);
  sir =(char*)malloc(lungime_f + 1);
  sir2 =(char*)malloc(lungime_f + 1);
  fread(sir, lungime_f, 1, f);
  sir[lungime_f] = 0;
  fclose(f);
  strcpy(sir2,sir);
  analiza_cuvinte(sir,0);
  fprintf(g,"\n");
  analiza_cuvinte(sir2,1);
  fclose(g);
  return 0;
}