Am o problema la problema subtitrare de pe campion. Iau doar 20 de puncte si nu prea stiu de ce. Imi da wrong cu toate ca imi afiseaza bine. Cred ca e ceva datorita tipului double, dar nu sunt sigur.
Asa am gandit.
# include <fstream>
# include <cstring>
# include <cstdlib>
using namespace std;
ifstream f("subtitrare.in");
ofstream g("subtitrare.out");
int n,nant;
double hh,mm,ss,fff,nr;
char srt[101],sir[101],c,sirant[101];
int main()
{
while(f>>n)
{
if(n==nant)break;f.get();
f.getline(srt,101);
hh=atof(srt);
mm=atof(srt+3);
ss=atof(srt+6);
fff=atof(srt+9);
nr=hh*3600+mm*60+ss+fff/1000;
nr*=25; nr=(int)nr;
g<<'{'<<nr<<'}';
hh=atof(srt+17);
mm=atof(srt+20);
ss=atof(srt+23);
fff=atof(srt+26);
nr=hh*3600+mm*60+ss+fff/1000;
nr*=25; nr=(int)nr;
g<<'{'<<nr<<'}';
f.getline(sir,101);strcpy(sirant,sir);
while(f.getline(sir,101))
{
if(sir[0]=='\0')
{
g<<sirant<<'\n';
break;
}
else g<<sirant<<'|',strcpy(sirant,sir);
}
nant=n;
}
g<<sirant<<'\n';
return 0;
Editat de admin: Foloseste tagul "code" cand postezi surse.