给你两个数,问你他们相除是多少,有无限循环就把循环体括号括起来

模拟除法运算
把每一次的被除数记下,当有被除数相同时第一个循环就在他们之间。
要注意50个数之后要省略号...
每一次输出之后多打一个回车...

 #include <iostream>
#include <cstring>
using namespace std;
int a,b;
int flag[];//记录该被除数出现的位置
int ans[],num,cnt;
void fuc()
{
memset(flag,,sizeof(flag)); num=;
while(a>)
{
if(flag[a]>) break;
flag[a]=num;
ans[num]=a/b;
a%=b;
a*=; num++;
}
}
int main()
{
while(cin>>a>>b)
{
printf("%d/%d = ",a,b);
fuc();
printf("%d.",ans[]);//整数位 if(a>)
{
for(int i=;i<flag[a];i++) cout<<ans[i]; //循环体前
cout<<'(';
for(int i=flag[a];i<num&&i<=;i++)
{
cout<<ans[i];
}
if(num-flag[a]>=) cout<<"...";
cout<<')'<<endl;
printf(" %d = number of digits in repeating cycle\n\n",num-flag[a]);
}
else
{
for(int i=;i<num;i++) cout<<ans[i];
cout<<"(0)\n";
printf(" 1 = number of digits in repeating cycle\n\n");
} }
}

UVa 202 - Repeating Decimals的更多相关文章

  1. UVa 202 Repeating Decimals(抽屉原理)

    Repeating Decimals 紫书第3章,这哪是模拟啊,这是数论题啊 [题目链接]Repeating Decimals [题目类型]抽屉原理 &题解: n除以m的余数只能是0~m-1, ...

  2. uva 202(Repeating Decimals UVA - 202)

    题目大意 计算循环小数的位数,并且按照格式输出 怎么做 一句话攻略算法核心在于a=a%b*10,用第一个数组记录被除数然后用第二个数组来记录a/b的位数.然后用第三个数组记录每一个被除数出现的位置好去 ...

  3. UVa 202 Repeating Decimals【模拟】

    题意:输入整数a和b,输出a/b的循环小数以及循环节的长度 学习的这一篇 http://blog.csdn.net/mobius_strip/article/details/39870555 因为n% ...

  4. UVa 202 Repeating Decimals 题解

    The decimal expansion of the fraction 1/33 is 0.03, where the 03 is used to indicate that the cycle ...

  5. Repeating Decimals UVA - 202

    The / repeats indefinitely with no intervening digits. In fact, the decimal expansion of every ratio ...

  6. 【习题 3-8 UVA - 202】Repeating Decimals

    [链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 余数出现循环节. 就代表出现了循环小数. [代码] #include <bits/stdc++.h> using nam ...

  7. Repeating Decimals UVA - 202---求循环部分

    原题链接:https://vjudge.net/problem/UVA-202 题意:求一个数除以一个数商,如果有重复的数字(循环小数),输出,如果没有,输出前50位. 题解:这个题一开始考虑的是一个 ...

  8. UVa202 Repeating Decimals

    #include <stdio.h>#include <map>using namespace std; int main(){    int a, b, c, q, r, p ...

  9. uva 202

    #include <iostream> #include<cstdio> #include<cstring> #include<algorithm> # ...

随机推荐

  1. JavaScript类的设计

    [转载] Javascript与其他的面向对象语言不同,如C++,Java或PHP等.它并不是基于类的,而是基于原型的一种语言. 1.对象创建 在Javascript中创建一个类是非常容易的: var ...

  2. 使用react-native做一个简单的应用-04界面主框架

    欢迎界面搭建完毕,我们接下来需要做的就是搭建应用程序的主体框架啦.首先我们看一下首页的截图: 从图中看到,我将首页分为了三部分:用黑色矩形表示的头部,绿色表示的内容和红色表示的底部. 下面我们需要解决 ...

  3. iOS 使用NJKWebViewProgress做webview进度条

    NJKWebViewProgress地址:https://github.com/ninjinkun/NJKWebViewProgress 导入头文件 #import "NJKWebViewP ...

  4. ubuntu安装体验

    本文记录一下昨晚及今天安装ubuntu系统的过程及体验 2016年6月13日09:36:11 更新 今天才有发现原来自己有个没填的坑 = = 那次安乌班图后第一感觉是很好用,新鲜了好几天,但是很快,新 ...

  5. Visual Studio 2008快捷键

    命令行:Devenv 启动VS StudionIsqlw 启动SQL2000查询分析器Sqlwb 启动SQL2005企业管理器Inetmgr 启动IIS管理器大纲Ctrl+M,O折叠所有大纲Ctrl+ ...

  6. flask twisted 结合方案

    from flask import Flask, render_template, g app = Flask(__name__) @app.route("/") def inde ...

  7. 一步一步学python(五) -条件 循环和其他语句

    1.print 使用逗号输出 - 打印多个表达式也是可行的,但要用逗号隔开 >>> print 'chentongxin',23 SyntaxError: invalid synta ...

  8. MFC 动态创建按钮

    首先在对话框(模式对话框,无模式对话框)中添加一个ADD按钮,通过点击按钮产生的通告消息调用::OnBtnAdd()方法.此方法会在对话框的左上角创建一个按钮. 当然首先要在和次对话框相关联的类中添加 ...

  9. 杭电oj1236 排名

    Tips:此题比较简单,最好将每一个学生的信息构建一个结构体,另外需要注意的是,若分数相同,排序按姓名排序,我看网上很多都是使用<algorithm>中的sort算法,只需重写cmp函数即 ...

  10. HBase 2、HBase安装与初试牛刀

    官方帮助文档:http://hbase.apache.org/book.html  PDF:http://hbase.apache.org/apache_hbase_reference_guide.p ...