Cod sursa(job #1359327)

Utilizator miahiFMI Honceriu Mihai miahi Data 24 februarie 2015 22:08:58
Problema Convertor Scor 100
Compilator cpp Status done
Runda rosedu_cdl_2015 Marime 1.77 kb
#include<fstream>
#include<cstring>
#include<iostream>
#include<vector>
#include<ctype.h>
using namespace std;
int main()
{
    ifstream f("convertor.in");
    ofstream g("convertor.out");
    int n,i,j,var,k=0,t=0;
    string a;
    vector<string> strings;
    char b[1024],c[1024];
    while(!f.eof())
    {
        f.getline(b,1024);
        i=0;
        while(i<strlen(b))
        {
            if(b[i]=='}'&&t==1)
            {
                g<<"\n";
                for(j=1;j<strings.size();j+=2)
                    g<<strings[j]<<",";
                strings.clear();
                vector<string>(strings).swap(strings);
            }
            if(b[i]=='}'&&t==0)
            {
                t=1;
                for(j=0;j<strings.size();j+=2)
                    g<<strings[j]<<",";
                g<<"\n";
                for(j=1;j<strings.size();j+=2)
                    g<<strings[j]<<",";
                 strings.clear();
                 vector<string>(strings).swap(strings);
            }
            if(b[i]=='"')
            {
                i++;
                var=i;
                while(b[i]!='"')
                    c[i-var]=b[i++];
                c[i-var]='\0';
                strings.push_back(c);
                i++;
               // strcpy(c,NULL);
            }
            else
            {
                if(isdigit(b[i]))
                {
                    var=i;
                    while(isdigit(b[i]))
                        c[i-var]=b[i++];
                    c[i-var]='\0';
                    strings.push_back(c);
                   // strcpy(c,NULL);
                   if(b[i]=='}')
                    i--;
                }
                i++;
            }
        }
    }
}