23.打印由*号组成的三角形图案
编程题目:
23.下面是一个由*号组成的4行倒三角形图案。
要求:
(1)输入倒三角形的行数,行数的取值3-21之间,对于非法的行数,要求抛出提示“非法行数!”;
(2)在屏幕上打印这个指定了行数的三角形。
示例代码:
package program.calculation.exercise23;import java.util.Scanner;/*** 23.下面是一个由*号组成的4行倒三角形图案。* 要求:(1)输入倒三角形的行数,行数的取值3-21之间,* 对于非法的行数,要求抛出提示“非法行数!”;* (2)在屏幕上打印这个指定了行数的三角形。* * * ******* * ******** *** ***** *** ****** ***** *** ***** **** ******* * ******* ** A B C D*/public class Lines {public static void main(String args[]) {@SuppressWarnings("resource")Scanner scanner = new Scanner(System.in);System.out.print("请输入行数:");int lines = scanner.nextInt();printA(lines);//打印直角靠左正三角形printB(lines);//打印直角靠左倒三角形printC(lines);//打印直角靠右正三角形printD(lines);//打印直角靠右倒三角形}private static void printA(int lines){System.out.println("直角靠左正三角形");if (lines>3 && lines<21) {//外层循环控制行数(i行数下标)for (int i=0;i<lines;i++) {//内层循环控制每一行星数(j每一行星数下标)for (int j=0;j<=i*2;j++) { System.out.print("*");}System.out.println();}}else{System.out.println("非法行数!");}}private static void printB(int lines){System.out.println("直角靠左倒三角形");if (lines>3 && lines<21) {//外层循环控制行数(i行数下标)for (int i=lines-1;i>=0;i--) {//倒三角形,下标反过来递减//内层循环控制每一行星数(j每一行星数下标)for (int j=0;j<=i*2;j++) { System.out.print("*");}System.out.println();}}else{System.out.println("非法行数!");}}private static void printC(int lines){System.out.println("直角靠右正三角形");if (lines>3 && lines<21) {//外层循环控制行数(i行数下标)for(int i=0;i<lines;i++){ //本次循环控制空格数for(int j=(lines-1)*2;j>i*2;j--){ //空格组成倒三角形 System.out.print(" "); }//本次循环控制星数for(int j=0;j<=i*2;j++){ //星星组成正三角形 System.out.print("*"); } System.out.println(); } }else{System.out.println("非法行数!");}}private static void printD(int lines){System.out.println("直角靠右倒三角形");if (lines>3 && lines<21) {//外层循环控制行数(i行数下标)for (int i=lines-1;i>=0;i--) {//倒三角形,下标反过来递减//本次循环控制空格数for(int j=(lines-1)*2;j>i*2;j--){ System.out.print(" "); } //本次循环控制星数for(int j=0;j<=i*2;j++){ System.out.print("*"); } System.out.println(); }}else{System.out.println("非法行数!");}}
}
结果显示:
23.打印由*号组成的三角形图案
编程题目:
23.下面是一个由*号组成的4行倒三角形图案。
要求:
(1)输入倒三角形的行数,行数的取值3-21之间,对于非法的行数,要求抛出提示“非法行数!”;
(2)在屏幕上打印这个指定了行数的三角形。
示例代码:
package program.calculation.exercise23;import java.util.Scanner;/*** 23.下面是一个由*号组成的4行倒三角形图案。* 要求:(1)输入倒三角形的行数,行数的取值3-21之间,* 对于非法的行数,要求抛出提示“非法行数!”;* (2)在屏幕上打印这个指定了行数的三角形。* * * ******* * ******** *** ***** *** ****** ***** *** ***** **** ******* * ******* ** A B C D*/public class Lines {public static void main(String args[]) {@SuppressWarnings("resource")Scanner scanner = new Scanner(System.in);System.out.print("请输入行数:");int lines = scanner.nextInt();printA(lines);//打印直角靠左正三角形printB(lines);//打印直角靠左倒三角形printC(lines);//打印直角靠右正三角形printD(lines);//打印直角靠右倒三角形}private static void printA(int lines){System.out.println("直角靠左正三角形");if (lines>3 && lines<21) {//外层循环控制行数(i行数下标)for (int i=0;i<lines;i++) {//内层循环控制每一行星数(j每一行星数下标)for (int j=0;j<=i*2;j++) { System.out.print("*");}System.out.println();}}else{System.out.println("非法行数!");}}private static void printB(int lines){System.out.println("直角靠左倒三角形");if (lines>3 && lines<21) {//外层循环控制行数(i行数下标)for (int i=lines-1;i>=0;i--) {//倒三角形,下标反过来递减//内层循环控制每一行星数(j每一行星数下标)for (int j=0;j<=i*2;j++) { System.out.print("*");}System.out.println();}}else{System.out.println("非法行数!");}}private static void printC(int lines){System.out.println("直角靠右正三角形");if (lines>3 && lines<21) {//外层循环控制行数(i行数下标)for(int i=0;i<lines;i++){ //本次循环控制空格数for(int j=(lines-1)*2;j>i*2;j--){ //空格组成倒三角形 System.out.print(" "); }//本次循环控制星数for(int j=0;j<=i*2;j++){ //星星组成正三角形 System.out.print("*"); } System.out.println(); } }else{System.out.println("非法行数!");}}private static void printD(int lines){System.out.println("直角靠右倒三角形");if (lines>3 && lines<21) {//外层循环控制行数(i行数下标)for (int i=lines-1;i>=0;i--) {//倒三角形,下标反过来递减//本次循环控制空格数for(int j=(lines-1)*2;j>i*2;j--){ System.out.print(" "); } //本次循环控制星数for(int j=0;j<=i*2;j++){ System.out.print("*"); } System.out.println(); }}else{System.out.println("非法行数!");}}
}