寻找循环节

来源:互联网 发布:美国圣昆丁监狱 编程 编辑:程序博客网 时间:2024/04/29 03:35
#include <iostream>using namespace std;int main(){while(true){int divide,divided;cin>>divide;cin>>divided;bool flag[100];memset(flag,false,100);if (divide%divided==0){cout<<"zhengchu"<<endl;}else{while (true){divide%=divided;if (flag[divide]==true){break;}flag[divide]=true;divide=divide*10;}}int temp=divide;do {cout<<divide*10/divided;divide=divide*10%divided;} while (divide!=temp);cout<<endl;}return 0;}
思路大概是寻找第一个重复出现的余数,然后从这个余数开始执行一遍除法运算,即可以找到循环节。
原创粉丝点击