ZOJ 1806 (小数高精度)
2024-08-24 07:56:16
题意:八进制小数转化成十进制的小数。
0.d1d2d3 ... dk [8] = 0.D1D2D3 ... Dm [10]
例:
0.75 [8] = 7*8^-1+5*8^-2 = ( 5/8 + 7 ) / 8 = 0.953125 [10]
算法:主要就是实现上面的秦九韶算法。
实现:模拟手算除法:
#include<iostream>
#include<cstdio>
#include<cstring> using namespace std; const int N=100000;
char num_2[N];
char num_10[N]; int main()
{
while(scanf("%s",num_2)!=EOF)
{
memset(num_10,0,sizeof num_10);
int index=0;
int len=strlen(num_2);
for(int i=len-1;i>=2;i--)
{
int j;
int digit=num_2[i]-'0';
for(j=0;j<index||digit;j++)
{
digit=digit*10+(j<index?num_10[j]-'0':0);
num_10[j]=digit/8+'0';
digit%=8;
}
index=j;
}
num_10[index]='\0';
printf("%s [8] = 0.%s [10]\n",num_2,num_10);
} return 0;
}
最新文章
- 【转】MongoDB C# / .NET Driver 中IMongoQuery的内部实现Query的用法
- asp.net 短信群发
- 微信公众平台中的openid是什么?
- mysql 配置主从
- 使用Eclipse把java文件打包成jar 含有第三方jar库的jar包
- android 一些数据转换方法
- Dash:程序员的好帮手
- docker启动,重启,停止容器
- 2018-2019-2 网络对抗技术 20165323 Exp4 恶意代码分析
- 第二次作业:Git的安装与使用
- 【黑金原创教程】【FPGA那些事儿-驱动篇I 】实验四:按键模块③ &mdash; 单击与双击
- Red Hat6设置使用CentOS的yum源
- maven配置checkstyle插件对代码规范进行静态检查
- pandas 读取大文件 read_table C-engine CParserError: Error tokenizing data
- ElasticStack系列之十七 &; 大文本搜索性能提升方案
- 20145225《网络对抗》Exp7 网络欺诈技术防范
- 逻辑回归原理_挑战者飞船事故和乳腺癌案例_Python和R_信用评分卡(AAA推荐)
- 由JDK源码学习ArrayList
- codeforce AIM tech Round 4 div 2 B rectangles
- Linux:ln命令详解(软连接,硬链接)