【0702作业】输出两种菱形(实心菱形和空心菱形)
实心菱形:
1 package com.workprojects; 2 /** 3 * 练习作业 4 * 输出菱形“*” 5 * 2019-07-02 6 * @author L 7 * 8 */ 9 public class Work070201 { 10 public static void main(String[] args) { 11 //菱形共7行,依次为1 3 5 7 5 3 1 12 //分为两部分循环输出,上三下四 13 for(int i = 0;i<3;i++) {//先输出上半部分,前三行内容 14 for(int a =0;a<3-i;a++) {//输出空格个数,前半部分为行数递增,空格减少,输出前三行空格 15 System.out.print(" ");//输出空格 16 } 17 for(int j=0;j<2*i+1;j++) {//上半部分每行的列数 18 System.out.print("*");//输出* 19 } 20 System.out.println(); 21 } 22 for(int i =0;i<4;i++) {//输出下半部分,后四行内容 23 for(int a=0;a<i;a++) {//输出空格个数,后半部分为行数递增,空格增加 24 System.out.print(" "); 25 } 26 for(int j =i;j<2*4-i-1;j++) {//下半部分每行列数 27 System.out.print("*"); 28 } 29 System.out.println(); 30 } 31 } 32 }
空心菱形:
1 package com.workprojects; 2 3 /** 4 * 输出空心菱形 5 * 2019-07-02 6 * 7 * @author L 8 * 9 */ 10 public class Work070202 { 11 public static void main(String[] args) { 12 // 空心菱形,共7行。分别输出上下两部分 13 // 第一行:一个星号,开头三个空格(空格x3 + *) 14 // 第二行:两个星号,开头两个空格,星号中间一个空格(空格x2 + * + 空格 + *) 15 // 第三行:两个星号,开头一个空格,星号中间三个空格(空格 + * + 空格x3 + *) 16 // 第四行:两个星号,开头没有空格,星号中间五个空格(* + 空格x5 +*) 17 // 第五行:两个星号,开头一个空格,星号中间三个空格(空格 + * + 空格x3 + *) 18 // 第六行:两个星号,开头两个空格,星号中间一个空格(空格x2 + * + 空格 + *) 19 // 第七行:一个星号,开头三个空格(空格x3 + *) 20 for (int i = 0; i < 4; i++) { // 先输出上半部分,前四行内容 21 for (int a = 0; a < 4 - 1 - i; a++) {// 输出空格个数,输出前四行空格 22 System.out.print(" ");// 输出空格 23 } 24 for (int j = 0; j < (2 * i + 1); j++) { // 输出每行的列数,也就是*的个数 25 if (j == 0 || j == 2 * i) { 26 System.out.print("*"); 27 } else { 28 System.out.print(" "); 29 } 30 } 31 System.out.println(); 32 } 33 for (int i = 0; i < 3; i++) { // 输出剩余下半部分,剩余三行 34 for (int a = 0; a < (i + 1); a++) {// 输出空格个数,输出后三行空格 35 System.out.print(" "); 36 } 37 for (int j = 0; j < 2 * (3 - i) - 1; j++) { 38 if (j == 0 || j == 2 * (2 - i)) { 39 System.out.print("*"); 40 } else { 41 System.out.print(" "); 42 } 43 } 44 System.out.println(); 45 } 46 47 } 48 49 }