• Java入门:一些初学者需要掌握的基础算法程序——逆序输出


    【问题】 将一个整数逆序输出。

    【思路】 有三种方法可以将一个数逆序输出:

        1)使用while循环

        2)使用for循环

        3)使用递归

    【代码】

    程序1:使用while循环

    import java.util.Scanner;
    class ReverseNumberWhile
    {
       public static void main(String args[])
       {
          int num=0;
          int reversenum =0;
          System.out.println("Input your number and press enter: ");
          //This statement will capture the user input
          Scanner in = new Scanner(System.in);
          //Captured input would be stored in number num
          num = in.nextInt();
          //While Loop: Logic to find out the reverse number
          while( num != 0 )
          {
              reversenum = reversenum * 10;
              reversenum = reversenum + num%10;
              num = num/10;
          }
    
          System.out.println("Reverse of input number is: "+reversenum);
       }
    }

    输出结果:

    Input your number and press enter: 
    145689
    Reverse of input number is: 986541

    程序2:使用for循环

    import java.util.Scanner;
    class ForLoopReverseDemo
    {
       public static void main(String args[])
       {
          int num=0;
          int reversenum =0;
          System.out.println("Input your number and press enter: ");
          //This statement will capture the user input
          Scanner in = new Scanner(System.in);
          //Captured input would be stored in number num
          num = in.nextInt();
          /* for loop: No initialization part as num is already
           * initialized and no increment/decrement part as logic
           * num = num/10 already decrements the value of num
           */
          for( ;num != 0; )
          {
              reversenum = reversenum * 10;
              reversenum = reversenum + num%10;
              num = num/10;
          }
    
          System.out.println("Reverse of specified number is: "+reversenum);
       }
    }

    输出结果:

    Input your number and press enter: 
    56789111
    Reverse of specified number is: 11198765

    程序3:使用递归

    import java.util.Scanner;
    class RecursionReverseDemo
    {
       //A method for reverse
       public static void reverseMethod(int number) {
           if (number < 10) {
           System.out.println(number);
           return;
           }
           else {
               System.out.print(number % 10);
               //Method is calling itself: recursion
               reverseMethod(number/10);
           }
       }
       public static void main(String args[])
       {
        int num=0;
        System.out.println("Input your number and press enter: ");
        Scanner in = new Scanner(System.in);
        num = in.nextInt();
        System.out.print("Reverse of the input number is:");
        reverseMethod(num);
        System.out.println();
       }
    }

    输出结果:

    Input your number and press enter: 
    5678901
    Reverse of the input number is:1098765

    当然,如果待逆序的这个数事先已经初始化了,就不用从键盘输入了,如:

    class ReverseNumberDemo
    {
       public static void main(String args[])
       {
          int num=123456789;//不从键盘输入,直接初始化为一个整数值。
          int reversenum =0;
          while( num != 0 )
          {
              reversenum = reversenum * 10;
              reversenum = reversenum + num%10;
              num = num/10;
          }
    
          System.out.println("Reverse of specified number is: "+reversenum);
       }
    }
  • 相关阅读:
    turtle库笔记
    使用turtle库绘制一个红色五角星图形‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪
    postgresql更新sequence的起始值
    es启动报错-系统设置
    mybatis批量update
    postgresql数据库连接数查询
    org.postgresql.util.PSQLException: 栏位索引超过许可范围:1,栏位数:0。
    postgresql创建SEQUENCE
    unzip解压所有zip格式
    jdk8中map的merge方法介绍
  • 原文地址:https://www.cnblogs.com/bayes/p/5344488.html
Copyright © 2020-2023  润新知