代码之家  ›  专栏  ›  技术社区  ›  Sagar Parikh

如何在java中解决这个模式

  •  -1
  • Sagar Parikh  · 技术社区  · 6 年前

    输入: 3. 3 3 3 2 2 2 1 1 1 $3 3 2 2 1 1 $3 2 1 $

      Scanner in=new Scanner(System.in);
        int n=in.nextInt();
    
    
        for(int i=n;i>0;i--)
                {
    
                for(int j=n;j>0;j--)
                {
    
                   System.out.print(i);
    
    
                }
    
                }
    
    2 回复  |  直到 6 年前
        1
  •  1
  •   The Scientific Method    6 年前

    你用这个:

    void pattern(int n){
       int k,i,j ;
       for( k=n; k>0; k--){        
        for(i=n; i>0; i--){
           for(j=k; j>0 ; j--){
               System.out.print(i);
           }       
        }
       System.out.print("$");      
      }
    }
    
        2
  •  0
  •   guleryuz    6 年前
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        while(in.hasNextInt()) {
            int n = in.nextInt();
            doRecursive(n,n);
        }
        in.close();
    }
    
    private static void doRecursive(int n, int k) {
        if(n < 1)
            return;
        for (int i = k; i > 0; i--) {
            for (int j = n; j > 0; j--) {
                System.out.print(i + " ");
            }
        }
        System.out.print('$');
        doRecursive(n-1,k);
    }