用java怎么表达?
发布网友
发布时间:2022-05-15 17:39
我来回答
共4个回答
热心网友
时间:2024-02-25 21:03
下面的图形改成+2,再倒着打个三角形就OK了...
热心网友
时间:2024-02-25 21:04
public class TrianglePrint {
// 正三角
public static void p1() {
int n = 5;
int a = 0;
int b = 0;
for (int i = 1; i <= n; i++) {
if (a != (n - i)) {
System.out.print(" ");
a++;
i = i - 1;
} else if (b != (2 * i - 1)) {
System.out.print("*");
b++;
i = i - 1;
} else if (a == (n - i) && b == (2 * i - 1)) {
System.out.println();
a = 0;
b = 0;
}
}
}
// 倒三角
public static void p2() {
int n = 5;
int a = 0;
int b = 0;
for (int i = n; i >= 1; i--) {
if (a != (n - i)) {
System.out.print(" ");
a++;
i = i + 1;
} else if (b != (2 * i - 1)) {
System.out.print("*");
b++;
i = i + 1;
} else if (a == (n - i) && b == (2 * i - 1)) {
System.out.println();
a = 0;
b = 0;
}
}
}
// 倒三角:用户决定行数
public static void sta(int n) {
for (int i = 0; i < n; i++) {
for (int j = 0; j < i; j++) {
System.out.print(" ");
}
for (int k = 0; k < 2 * (n - i) - 1; k++) {
System.out.print("*");
}
System.out.println();
}
}
// 输出正方形
public static void zf(int N) {
for (int i = 1; i <= N; i++) {
for (int j = 1; j <= N; j++) {
if (j == 1 || j == N || i == 1 || i == N)
System.out.print("*");
else
System.out.print(" ");
}
System.out.println();
}
}
// 输出正菱形
public static void lx(int n) {
for (int i = 0; i < n - 1; i++) {
for (int x = i + 1; x < n; x++) {
System.out.print(" ");
}
for (int y = 0; y < (i + 1) * 2 - 1; y++) {
System.out.print("*");
}
System.out.println();
}
for (int i = 0; i < n; i++) {
for (int x = 0; x < i; x++) {
System.out.print(" ");
}
for (int y = i; y < 2 * n - i - 1; y++) {
System.out.print("*");
}
System.out.println();
}
}
public static void main(String[] args) {
p1(); // 正三角
System.out.println("------------");
p2(); // 倒三角
System.out.println("------------");
sta(5); // 倒三角
System.out.println("------------");
zf(5); // 正方形
System.out.println("------------");
lx(6); // 菱形
}
}
热心网友
时间:2024-02-25 21:04
建立一个test.java
public class test {
public static void main(String[] args) {
for(int j=0;j<5;j++)
{
for(int i=4;i>j;i--)
System.out.print(" ");
for(int z=0;z<=j;z++)
System.out.print("*");
System.out.println("");
}
}
}
2.
public class test {
public static void main(String[] args) {
for(int j=0;j<5;j++)
{
for(int i=4;i>j;i--)
System.out.print(" ");
for(int z=0;z<2*j+1;z++)
System.out.print("*");
System.out.println("");
}
for(int j=0;j<4;j++)
{
for(int i=0;i<=j;i++)
System.out.print(" ");
for(int z=7;z>=(2*j+1);z--)
System.out.print("*");
System.out.println("");
}
}
}
热心网友
时间:2024-02-25 21:05
这样的问题自己看看 for循环应该可以搞定啦
第一个题目循环5次,
每一次循环打出空格和 *
空格从5开始减少
* 从1开始增加