pc/uva 110101/100 3n+1 problem(已解决)
2013-09-10 15:09
351 查看
ansic C:
需要注意的问题是:对于整数i,j,他们之间大小没有确定,所以我们要判断哪个大,哪个小。
#include <stdio.h> int iscorrect(int n); int length1(int n); void swap(int *p,int *q); int main(){ int i,j, m,n,flag,max; // char flag; while(scanf("%d %d",&i,&j) != EOF){ max = 0; n = i; m =j; if (i > j) swap(&i,&j); if(iscorrect(i) && iscorrect(j) ){ while (i <= j){ flag = length1(i); i++; if(flag> max) max = flag; } printf("%d %d %d\n",n,m,max); // printf("\n"); } else { printf("you inputting is error,please input again \n "); } } //system("pause"); } int iscorrect(int n){ if (n> 0 && n < 1000000) return 1; else return 0; } int length1(int n){ int len; len = 1; while (n != 1){ if(n % 2 == 0){ len ++; n = n/2; } else { n = 3*n +1; len++; } } return len; } void swap(int *p,int *q){ int temp; temp = *p; *p = *q; *q = temp; }
需要注意的问题是:对于整数i,j,他们之间大小没有确定,所以我们要判断哪个大,哪个小。
相关文章推荐
- UVa 100 Problem: The 3n+1 problem (PC 110101)
- PC/UVa 110101/100 3n+1 问题(3n+1 Problem)
- PC/UVa 题号: 110101/100 The 3n+1 problem (3n+1 问题)
- UVa Problem 100 The 3n+1 problem (3n+1 问题)
- UVA 100 - The 3n+1 problem (3n+1 问题)
- UVA 100 - The 3n+1 Problem
- uva 100 The 3n+1 problem
- 【转】UVa Problem 100 The 3n+1 problem (3n+1 问题)——(离线计算)
- UVa Problem 100 The 3n+1 problem (3n+1 问题)
- POJ 1207,UVA 100 The 3n+1 problem
- PC 110101 3n+1 Problem
- uva 100 The 3n+1 problem
- UVa Problem 100 The 3n+1 problem (3n+1 问题)+1 问
- UVa 100|The 3n+1 Problem|暴力|坑点多
- UVA_100_The_3n+1_Problem
- UVA 100 - The 3n+1 problem (3n+1 问题)
- UVa OJ 100-The 3n+1 Problem
- uva 100 3n+1 problem
- UVA 100 The 3n+1 Problem
- UVa Problem Solution: 100 - The 3n+1 problem