展开全部
结果打印行和列不是等距的,这种方法看起来很无脑
所以我把最后一行的边做了修改,很笨的方法。
大家有更好的方法,或者借助其他绘图工具的 不妨分享一下,大家一起学习
public class Triple {
public static void main(String args[]){
int sideLength=21; //边长,越大越接近等边。
int topPoint=sideLength/2+1;
int height=(int)java.lang.Math.sqrt(3)*sideLength/2+1;
//System.out.println(topPoint);
for(int j=1;j<=height;j++){
System.out.print(" ");
}
System.out.print("*");
System.out.print("\n");
for(int i=1;i<=height-2;i++){
for(int j=1;j<=height-i;j++){
System.out.print(" ");
}
System.out.print("*");
for(int k=0;k<i*2-1;k++){
System.out.print(" ");
}
System.out.print("*");
System.out.print("\n");
}
for(int l=0;l<sideLength/2+1;l++){
System.out.print(" *");
}
System.out.print("\n");
}
}
所以我把最后一行的边做了修改,很笨的方法。
大家有更好的方法,或者借助其他绘图工具的 不妨分享一下,大家一起学习
public class Triple {
public static void main(String args[]){
int sideLength=21; //边长,越大越接近等边。
int topPoint=sideLength/2+1;
int height=(int)java.lang.Math.sqrt(3)*sideLength/2+1;
//System.out.println(topPoint);
for(int j=1;j<=height;j++){
System.out.print(" ");
}
System.out.print("*");
System.out.print("\n");
for(int i=1;i<=height-2;i++){
for(int j=1;j<=height-i;j++){
System.out.print(" ");
}
System.out.print("*");
for(int k=0;k<i*2-1;k++){
System.out.print(" ");
}
System.out.print("*");
System.out.print("\n");
}
for(int l=0;l<sideLength/2+1;l++){
System.out.print(" *");
}
System.out.print("\n");
}
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用嵌套for循环最简单:
for(int
i=4;i>0;i--){
for(int
k
=
4;
k>i;
k--)
{
system.out.print("
");
}
for(int
j=i;j>0;j--){
system.out.print("
");
system.out.print("*");
}
system.out.println();
}
你应该能看懂的
希望能帮到你,嘻嘻
for(int
i=4;i>0;i--){
for(int
k
=
4;
k>i;
k--)
{
system.out.print("
");
}
for(int
j=i;j>0;j--){
system.out.print("
");
system.out.print("*");
}
system.out.println();
}
你应该能看懂的
希望能帮到你,嘻嘻
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你写得太抽象了...题目出明白点
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
没看懂你的题目什么意思。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询