1439: 2.4.5 Fractions to Decimals 分数化小数

时间限制: 1 Sec  内存限制: 64 MB
提交: 194  解决: 13

题目描述

写一个程序,输入一个形如N/D的分数(N是分子,D是分母),输出它的小数形式。 如果小数有循环节的话,把循环节放在一对圆括号中。例如, 1/3 = .33333333 写成0.(3) 41/333 = 0.123123123... 写成0.(123) 用xxx.0 成表示整数 典型的转化例子: 1/3 = 0.(3) 22/5 = 4.4 1/7 = 0.(142857) 2/2 = 1.0 3/8 = 0.375 45/56 = 0.803(571428)

输入

单独的一行包括被空格分开的 N和D, 1 <= N,D <= 100000。

输出

小数的表示方法上面说的很明白了,如果输出的长度超过76个字符,每行输出76个。

样例输入

<span class="sampledata" style="font-family: monospace; font-size: 18px; white-space: pre; background: none 0px 0px repeat scroll rgb(141, 184, 255);">45 56</span>

样例输出

<span class="sampledata" style="font-family: monospace; font-size: 18px; white-space: pre; background: none 0px 0px repeat scroll rgb(141, 184, 255);">0.803(571428)
</span>

迷失在幽谷中的鸟儿,独自飞翔在这偌大的天地间,却不知自己该飞往何方……

[cpp] view plain copy  print?
  1. #include <stdio.h>
  2. #include <string.h>
  3. #define N 100010
  4. int rm[N],c;
  5. char buf[N],dev[N];
  6. int main()
  7. {
  8. int m,n,i;
  9. scanf("%d%d",&m,&n);
  10. sprintf(buf,"%d.",m/n);
  11. memset(rm, -1, sizeof(rm));
  12. m = m % n;
  13. dev[0] ='0';
  14. for(i= 0;; i++)
  15. {
  16. if(m==0)
  17. {
  18. sprintf(buf + strlen(buf),"%s", dev);
  19. break;
  20. }
  21. if(rm[m]!= -1)
  22. {
  23. sprintf(buf + strlen(buf), "%.*s(%s)", rm[m], dev, dev + rm[m]);
  24. break;
  25. }
  26. rm[m] = i;
  27. m *= 10;
  28. dev[c++] = m / n + '0';
  29. m = m % n;
  30. }
  31. for(i = 0; i<(int)strlen(buf); i+=76)printf("%.76s\n", buf + i);
  32. return 0;
  33. }

1439: 2.4.5 Fractions to Decimals 分数化小数相关推荐

  1. usaco ★Fractions to Decimals 分数化小数

    ★Fractions to Decimals 分数化小数 写一个程序,输入一个形如 N/D 的分数(N 是分子,D 是分母),输出它的小数形式. 如果小数有循环节的话,把循环节放在一对圆括号中.例如, ...

  2. 分数化小数(指定精度)

    分数化小数(指定精度) #include <stdio.h> #include <iostream> #include <iomanip> using namesp ...

  3. 分数化成有限小数的方法_分数化小数的方法|小数化分数题目

    [www.520z-2.com - 话题作文] 小数由整数部分.小数部分和小数点组成.当测量物体时往往会得到的不是整数的数,古人就发明了小数来补充整数 小数是十进制分数的一种特殊表现形式.下面是小学生 ...

  4. C++——分数化小数

     File Name:T023.cpp 分数化小数 Time Limit: 3000ms, Memory Limit: 10000KB , Accepted: 3592, Total Submis ...

  5. 求分数循环节(分数化小数)的算法

    问题: 给定两个数a.b,找出a/b的循环节,并按照指定格式输出.比如a=1.b=3,则输出0.(3),即用括号包含循环节. 解法: USCAO 2.4.5中的题 Fractions to Decim ...

  6. java分数变小数的函数_分数化小数

    题目 求 a / b 的小数表现形式.如果 a 可以整除 b 则不需要小数点. 如果是有限小数,则可以直接输出. 如果是无限循环小数,则需要把小数循环的部分用 "()" 括起来. ...

  7. 分数化小数 Fractions to Decimals

    https://www.luogu.org/problemnew/show/P1530 题解:模拟除法 /* *@Author: STZG *@Language: C++ */ #include &l ...

  8. 分数化小数计算机在线,循环小数化分数计算器

    一.纯循环小数化分数 从小数点后面第一位就循环的小数叫做纯循环小数.怎样把它化为分数呢?看下面例题. 把纯循环小数化分数: 纯循环小数的小数部分可以化成分数,这个分数的分子是一个循环节表示的数,分母各 ...

  9. 分数化小数(模拟除法操作)

    题目:输入a, b, c,输出a/b的小树形式,精确到小数点后c位.a,b <= 1e6, c <= 100; 输出包含多组数据,结束标记为a = b = c = 0. 样例输入:1   ...

最新文章

  1. %hd %d %ld %u ......
  2. 【数据库】Windows安装redis全流程
  3. 浏览器兼容性问题解决方案之CSS——已在IE、FF、Chrome测试
  4. flex module 弹出窗问题
  5. OpenCV-图像处理(28、轮廓发现(find contour in your image))
  6. 60道计算机网络面试题(附答案,背诵版)
  7. 测试用例(等价类划分法)
  8. 指纹识别 python实现_Python实现指纹识别你见过没?
  9. 中国新一代超级安全核燃料材料入堆辐照试验开始
  10. 展望2019年:未来一年的WordPress
  11. 关于如何配置bable
  12. Python中位置参数、关键字参数、默认参数和不定长参数(非固定参数)的简介
  13. Pyqt设计界面时无法显示图片问题
  14. 室内定位——UWB测距及定位原理
  15. 图论、建图--bzoj1539: [POI2005]Dwu-Double-row
  16. 《线性代数的本质》学习笔记
  17. 数学建模学习——回归分析
  18. AI视频修复,标清转高清视频重燃怀旧经典
  19. Python网络爬虫入门篇---小白必看
  20. matlab升压斩波仿真,升压斩波电路设计与仿真.doc

热门文章

  1. IOS – OPenGL ES 调节图像伽马线 GPUImageGammaFilter
  2. Python while循环 - Python零基础入门教程
  3. centos mysql rpm re_centos7和centos6.5环境rpm方式安装mysql5.7和mysql5.6详解
  4. java对外发布接口文档_java之接口文档规范
  5. 总线制和多线制示意图_主机总线线 总线制和多线制示意图
  6. linux 解压tar.jz,linux系统压缩文件和解压缩命令
  7. 统计c语言中英文字幕,C语言日记——递归
  8. 服务器本地文件,云服务器 本地文件
  9. java线程同步的实现_【Java多线程系列三】实现线程同步的方法
  10. SSM 整合 2:Java EE 开发环境的搭建(JDK 配置、Tomcat 安装、IDE 安装、IDE 集成 Tomcat、Spring 及其组件的下载)