3 solutions

  • 1
    @ 2023-10-2 16:39:50
    #include<bits/stdc++.h>
    using namespace std;
    int ans;
    void judge(int k)
    {
    
    	if(k==1)
    		cout<<"End";
    	else
    	{
    		if(k%2==0)
    		{
    			ans=k/2;
    			cout<<k<<"/2="<<ans<<endl;
    		}
    		else
    		{
    			ans=k*3+1;
    			cout<<k<<"*3+1="<<ans<<endl;
    		}
    	}
    }
    
    int main()
    {
    	int n;
    	cin>>n;
    	judge(n);
    	while(ans!=1)
    		judge(ans);
    	if(n!=1)
    		cout<<"End";
    	return 0;
    }
    
    • 0
      @ 2023-10-27 22:50:27
      #include<iostream>
      using namespace std;
      void Jcgu(int x){
        if(x==1)cout<<"End";
        else if(x%2==0){
          printf("%d/2=%d\n",x,x/2);
          Jcgu(x/2);
        }
        else{
          printf("%d*3+1=%d\n",x,x*3+1);
          Jcgu(x*3+1);
        }
      }
      int main(){
        int n;
        cin>>n;
        Jcgu(n);
        return 0;
      }
      
      • 0
        @ 2023-10-25 15:16:17
        #include<stdio.h>
        #include<math.h>
        #pragma warning(disable:4996) 
        int main()
        {
            int num = 0, temp;;
            scanf("%d", &num);
            while (num != 1)
            {
                temp = num;
                if (num % 2 != 0)
                {
                    num *= 3;
                    num++;
                    printf("%d*3+1=%d\n",  temp ,num);
                }
                else
                {
                    num /= 2;
                    printf("%d/2=%d\n", temp, num);
                }
            }
            printf("End\n");
            return 0;
        }
        
        • 1

        Information

        ID
        6752
        Time
        1000ms
        Memory
        128MiB
        Difficulty
        8
        Tags
        (None)
        # Submissions
        332
        Accepted
        60
        Uploaded By