JAVA语言程序设计基础篇p117,4.17,4.19的答案
编写程序,提示用户输入一个整数然后显示金字塔形状的图案。
import java.util.Scanner; public class yy { public static void main(String[] arg){ Scanner input=new Scanner(System.in); System.out.print("please input a number :"); int n=input.nextInt(); for(int i=1;i<=n;i++){ //打印前半部分的空格 for(int j=1;i+j<=n;j++){ System.out.print(" "); } //打印中间的数字 for(int k=i, num=1;num<=2*i-1;num++){ System.out.print(k+" "); if(num<i){ k--; }else if(num>=i){ k++; } } //打印后半部分的空格 for(int j=n+i;j<=2*n-1;j++){ System.out.print(" "); } System.out.println(); } } }
编写程序,打印有倍数关系的金字塔形的数字。
import java.util.Scanner; public class yy1 { public static void main(String[] args){ Scanner input=new Scanner(System.in); System.out.print("please input a number :"); int n=input.nextInt(); for(int i=1;i<=n;i++){ //打印前半部分的空格 for(int j=1;i+j<=n;j++){ System.out.print(" "); } //打印中间的数字 for(int k=1, num=1;num<=2*i-1;num++){ System.out.print(k+" "); if(num<i){ k = k*2; }else if(num>=i){ k = k/2; } } //打印后半部分的空格 for(int j=n+i;j<=2*n-1;j++){ System.out.print(" "); } System.out.println(); } } }