#include <iostream> #include <math.h> using namespace std; int main(){ double n,v1,v2,t,time; while(scanf("%lf%lf%lf%lf",&n,&v1,&v2,&t)!=EOF){ if(n==0) printf("0.00\n"); if((v1<=0&&v2>=0)||(v1>0&&v2>0&&v2>=v1)||(v1<0&&v2<0&&v2>=v1)) printf("NO\n"); else if(v1>=0&&v2<=0){ time = n*1000/(v1-v2); if(time<=t) printf("%.2lf\n",time); else printf("NO\n"); } else{ time = n/abs(v1-v2); if(time<=t) printf("%.2lf\n",time); else printf("NO\n"); } } return 0; } /* Main.cc: In function 'int main()': Main.cc:20:31: error: call of overloaded 'abs(double)' is ambiguous time = n/abs(v1-v2); ^ Main.cc:20:31: note: candidates are: In file included from /usr/include/c++/4.9/cstdlib:72:0, from /usr/include/c++/4.9/ext/string_conversions.h:41, from /usr/include/c++/4.9/bits/basic_string.h:2850, from /usr/include/c++/4.9/string:52, from /usr/include/c++/4.9/bits/locale_classes.h:40, from /usr/include/c++/4.9/bits/ios_base.h:41, from /usr/include/c++/4.9/ios:42, from /usr/include/c++/4.9/ostream:38, from /usr/include/c++/4.9/iostream:39, from Main.cc:1: /usr/include/stdlib.h:775:12: note: int abs(int) extern int abs (int __x) __THROW __attribute__ ((__const__)) __wur; ^ In file included from /usr/include/c++/4.9/ext/string_conversions.h:41:0, from /usr/include/c++/4.9/bits/basic_string.h:2850, from /usr/include/c++/4.9/string:52, from /usr/include/c++/4.9/bits/locale_classes.h:40, from /usr/include/c++/4.9/bits/ios_base.h:41, from /usr/include/c++/4.9/ios:42, from /usr/include/c++/4.9/ostream:38, from /usr/include/c++/4.9/iostream:39, from Main.cc:1: /usr/include/c++/4.9/cstdlib:174:3: note: long long int std::abs(long long int) abs(long long __x) { return __builtin_llabs (__x); } ^ /usr/include/c++/4.9/cstdlib:166:3: note: long int std::abs(long int) abs(long __i) { return __builtin_labs(__i); } ^ */ |
Double click to view unformatted code.