Run ID | 作者 | 问题 | 语言 | 测评结果 | Time | Memory | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|
79624 | hby | 二进制小数转十进制 | C++ | Accepted | 3 MS | 292 KB | 385 | 2024-07-09 10:08:52 |
#include<bits/stdc++.h> using namespace std; int main(){ char s[100]; double ans=0; int k; cin>>s; int len=strlen(s); for(int i=0;i<len;i++){ if(s[i]=='.'){ k=i; break; } } for(int i=0,j=k-1;i<k,j>=0;i++,j--){ ans+=((s[i]-'0')*pow(2,j)); } int j=-1; for(int i=k+1;i<len;i++){ ans+=((s[i]-'0')*pow(2,j)); j--; }cout<<ans; return 0; }