//比较简单,就没什么好注意的了 #include<iostream> using namespace std; int main(){ int n; while(cin>>n){ if(n==0) break; int times=0; while(n!=1){ if(n%2==0) n/=2; else n=(3*n+1)/2; times++; } cout<<times<<endl; } }
import java.util.Scanner; public class Main{ public static void main(String[] args){ Scanner sc = new Scanner(System.in); while(sc.hasNext()){ int n = sc.nextInt(); int count =0; if(n == 0){ break; } while(n !=1){ if(n%2 == 0){ n/=2; }else{ n = 3*n +1; n/=2; } count++; } System.out.println(count); } } }
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); while (scanner.hasNext()){ int n = scanner.nextInt(); // n=0 表示结束 int count=0; if (n!=0){ while (n!=1){ if (n%2==0) { n = n / 2; count++; } else{ n=n*3+1; n=n/2; count++; } } System.out.println(count); } } } }
#include<iostream> #include<string> using namespace std; int main() { int input; while (cin >> input) { if (input == 0) break; int step = 0; while (input != 1) { if (input % 2 == 0) input /= 2; else input = (3 * input + 1) / 2; step += 1; } cout << step << endl; } return 0; }
#include<iostream> using namespace std; int judge(int n) { int count = 0; if(n == 1) { return 0; } while(true) { if(n%2 == 0) { n = n /2; } else { n = n*3+1; n = n /2; } count++; if(n == 1) { break; } } return count; } int main() { int n; while((cin>>n)&&(n!=0)) { cout<<judge(n)<<endl; } }
#include<iostream> #include<cstdio> #define IsEven(x) ((x)%2==0?1:0) using namespace std; int main(){ int n; while(cin>>n){ int step = 0; while(n!=1){ if(IsEven(n)){ n = n/2; step++; } else{ n = (3*n+1)/2; step++; } } cout<<step<<endl; } return 0; }
#include <cstdio> int cut(int num){ int num2; if(num%2==0){ num2=num/2; }else{ num2=(num*3+1)/2; } return num2; } int main() { int num; while(scanf("%d",&num)!=EOF){ if(num==0){ break; } int turns=0; while(num!=1){ turns++; num=cut(num); } printf("%d\n",turns); } return 0; }
#include<iostream> using namespace std; int main(){ int n; while(cin>>n){ int count = 0; while (n != 1){ if (n % 2 == 0){ n = n / 2; count++; } else{ n = (3 * n + 1) / 2; count++; } } cout<<count<<endl; } return 0; }
#include <iostream> using namespace std; int main() { int a; int t = 0; while (cin >> a) { while (a != 1) { if (a % 2 == 0) a /= 2; else a = (3 * a + 1) / 2; t++; } cout << t; t = 0; } }