| Run ID | 作者 | 问题 | 语言 | 测评结果 | Time | Memory | 代码长度 | 提交时间 |
|---|---|---|---|---|---|---|---|---|
| 153359 | 陈骏睿 | 二进制小数转十进制 | C++ | Wrong Answer | 1 MS | 280 KB | 545 | 2026-05-16 12:01:06 |
#include<iostream> // cin\cout\endl #include<cstdio> //scanf()\printf() #include<cstring> // strcpy()\strcat()\strcmp()\strlen()\memset() #include<cmath> //sqrt()\pow()\abs()\ceil()\floor()\max()\min() using namespace std; int main(){ string a; cin>>a; int l=a.size(); int i=0; double n=0,p=1; while(a[i]!='.'&&i<l)i++; for(int j=l-1;j>=0;j--){ n+=(a[j]-'0')*p; p*=2; } p=2; for(i=i+1;i<l;i++){ n+=(a[1]-'0')*(1/p); p*=2; } cout<<n<<endl; return 0; }
------Input------
0.111
------Answer-----
0.875
------Your output-----
-10.75