Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- int main() {
- int a,b;
- while (scanf("%d %d", &a, &b)!=EOF) {
- char str[1000];
- int cnt;
- int z = a/b;
- int c=a;
- a = a%b;
- for (cnt=0; cnt<900;cnt++) {
- str[cnt] = ((a*10)/b) + '0';
- a = (a*10)%b;
- }
- str[cnt] = 0;
- int len,i,j,found = 0, k;
- for (i=0;i<100 && !found;i++) {
- for (len=1;len<=(800-i-1) && !found;len++) {
- int valid=1;
- for (j=i;j<=i+len && valid;j++) {
- if (str[j] != str[j+len]) valid = 0;
- }
- if (valid) {
- found = 1;
- printf("%d/%d = %d.",c,b, z);
- for (k=0;k<j-len-1;k++)printf("%c", str[k]);
- printf("(");
- for (k=j-len-1; k<j-1 && k<50;k++) printf("%c", str[k]);
- if (k<50) printf(")\n");
- else printf("...)\n");
- printf(" %d = number of digits in repeating cycle\n", len);
- printf("\n");
- }
- }
- }
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement