Run ID 作者 问题 语言 测评结果 Time Memory 代码长度 提交时间
149197 c13 二进制小数转十进制 C++ Wrong Answer 0 MS 272 KB 560 2026-03-07 19:13:08

Tests(0/10):


Code:

#include<bits/stdc++.h> using namespace std; string s; double sum;int p; void xjz(int o,double i){ if(o==s.size())return; sum+=(s[s.size()-o-1]-'0')*i; xjz(o+1,i/2.0); } void jz(int o,int i){ if(o==s.size())return; if(s[o]=='.'){xjz(o+1,0.5);return;} sum+=(s[p-o-1]-'0')*i; jz(o+1,i*2); } int main(){ cin>>s; for(int i=0;i<s.size();i++)if(s[i]=='.'){p=i;break;} jz(0,1); /*int l=s.size(); for(int i=0,j=l-1;i<l&&i>=0;i++,j--)sum+=(s[j]-'0')*pow(2,i);*/ cout<<sum<<"\n"; return 0; }


Run Info:

------Input------
0.111
------Answer-----
0.875
------Your output-----
0