Online Judge | Problem Set | Authors | Online Contests | User | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest |
Re:WAWAWA!!谁能告诉我哪错了?In Reply To:WAWAWA!!谁能告诉我哪错了? Posted by:zyz at 2007-04-30 21:48:38 > #include<iostream> > #include<iomanip> > using namespace std; > > int main(){ > char temp[30]={0}; > double distance=0.0; > int lasttime=0; > double oldspeed=0.0; > double curspeed=0.0; > while(cin.getline(temp, sizeof(temp), '\n')){ > char *space; > int hh, mm, ss; > for(int i=strlen(temp)-1;i>=0;i--) > if(temp[i]!=' ') > break; > else > temp[i]=0; > if(space=strchr(temp, ' ')){ > *space=0; > sscanf(temp, "%d:%d:%d", &hh, &mm, &ss);space++; > temp[strlen(temp)]='\0'; > // cout<<space<<endl; > if(sscanf(space, "%lf", &curspeed)==-1){ > curspeed=0.0;} > // cout<<"*"<<curspeed<<endl; > distance = oldspeed*(hh*3600+mm*60+ss - lasttime)/3600; 原来是这里: += ... > lasttime = hh*3600+mm*60+ss; > oldspeed = curspeed; > // cout<<lasttime<<" "<<oldspeed<<endl; > } > else{ > sscanf(temp, "%d:%d:%d", &hh, &mm, &ss); > int nowdis=0; > nowdis = (distance + oldspeed*(hh*3600+mm*60+ss - lasttime)/3600)*1000; > if(nowdis%10>=5){ > nowdis /= 10; nowdis += 1;} > else > nowdis /= 10; > cout.width(2); > cout.fill('0'); > cout<<hh<<":"; > cout.width(2); > cout.fill('0'); > cout<<mm<<":"; > cout.width(2); > cout.fill('0'); > cout<<ss<<" "; > cout.setf(ios::fixed); > cout.setf(ios::showpoint); > cout.precision(2); > cout<<(double)nowdis/100<<" km"<<endl; > } > } > } Followed by: Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator