输出三角形:
法一:
思想:根据星星的坐标索引的规律,我们通过下图发现,星星的索引是在中心位置 加 以及 减 行索引的范围内的,我们可以根据这个规律去实现。
import java.util.Scanner;
public class java_21 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入你想打印的行数");
int count = scanner.nextInt();
int column = count*2-1; //列数等于行数乘2减一
for(int i=0;i<count;i++){
for(int j=0;j<column;j++){
int num = column/2; //取中心位置
if(j<=num+i&&j>=num-i){
System.out.print("*");
}else{
System.out.print(" ");
}
}
System.out.println(" ");
}
}
}
法二:
思想:通过输出左边部分的空格以及星星得到,分为2步,先输出每一行左边部分的空格数,紧接着输出这一行的星星数,即可组成效果图。
(1)左边空格数 = 行数-当前行索引 ;
(2)本行星星数 = 2*当前行索引+1 ;
import java.util.Scanner;
public class java_21 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入你想打印的行数");
int count = scanner.nextInt();
for(int i=1;i<=count;i++){
// 控制每行打印空格的个数,空格的个数是总行数减去当前行数,也就是count-i
for (int j=0;j<count-i;j++){
System.out.print(" ");
}
// 控制星星的个数,是2倍行数-1
for (int k=1;k<=2*i-1;k++){
System.out.print("*");
}
System.out.println(" ");
}
}
}