如何用java的for循环做一个等腰三角形?

 我来答
木秀林枫
推荐于2017-09-15 · TA获得超过1.2万个赞
知道大有可为答主
回答量:6138
采纳率:0%
帮助的人:3106万
展开全部
第1种方法:
要用三循环才可以, 这个就是三角形的代码.
public class Test {
public static void main(String[] args) {
for (int i = 1; i <= 7; i++) {
for (int j = 1; j <= 7-i; j++) {//7-i的意思是第一次的时候7-I等于6那这个for这输入6个空格第二次的时候7-I等于5那for就输入5个空格//每循环一次这个I就要自动加一个数
System.out.print(" "); //这里面意思是输入空格 //注意这里的空格是的确要输入的不然可以在空格里输入一个数字看一看效果
}
for (int ji = 1; ji <=2*i-1; ji++) {//这个for循环的意思是输入*号
//和ji<=2*i-1的意思是;这里2*i-1的意思是在空格后面加入一个*号,第一次循环是
System.out.print("*");
}
System.out.println();//这里的意思在下一次循环的时候换行ln的意思就是换行。而没有ln的就不换行

}
}
}
第2种方法:
首先要有一个参数,即等腰三角形的高度h,然后根据h计算第i层打印的字符数量n以及开始位置s,接着把n和s作为参数传给执行打印的方法printchars(s,n);
例:
------*------
----*-*-*----
--*-*-*-*-*--
*-*-*-*-*-*-*
以最后一行的字符数为准,最后一行的字符数应该是2h-1,字符之间的空格数(事例中是“-”)是2h-1-1,所以总字符数是4h-3,也就是每一行的长度是4h-3。第i层的字符数量为2i-1,开始位置是2(h-i)。

public class IsoscelesTriangle {
/**
* 等腰三角形
*/
public void print1(){//形如 ▲向上的
for(int i=1;i<=5;i++){
for(int k=1;k<=5-i;k++)
System.out.print(" ");
for(int j=1;j<=2*i-1;j++)
System.out.print("*");

System.out.print("\n");
}
}

public void print2(){//形如:倒▲ 向下的
for(int i=1;i<=5;i++){
for(int j=1;j<=i-1;j++)
System.out.print(" ");
for(int k=1;k<=11-(2*i);k++)
System.out.print("*");

System.out.print("\n");
}
}

public static void main(String[] args) {
IsoscelesTriangle app = new IsoscelesTriangle();
System.out.println("---------------------------");
app.print1();
System.out.println("---------------------------");
app.print2();
System.out.println("---------------------------");
}
}
第3种方法:
public class Trigon
{
public static void main(String[] arges){

for(int i=1;i<=9;i++){

for(int j=1;j<=9-i ;j++ ){
System.out.print(" ");
}

for(int k=1;k<=2*i-1;k++){
System.out.print(i);
}

System.out.println();
}

System.out.println("----------------------------------");
for(int i=9;i>=1;i--){
for(int j=1;j<=9-i;j++){
System.out.print(" ");
}
for(int k=1;k<=2*i-1;k++){
System.out.print(i);
}
System.out.println();
}

}
}
w845571853
推荐于2017-09-17
知道答主
回答量:17
采纳率:0%
帮助的人:10.1万
展开全部
要用三循环才可以, 这个就是三角形的代码.
public class Test {
public static void main(String[] args) {
for (int i = 1; i <= 7; i++) {
for (int j = 1; j <= 7-i; j++) {//7-i的意思是第一次的时候7-I等于6那这个for这输入6个空格第二次的时候7-I等于5那for就输入5个空格//每循环一次这个I就要自动加一个数
System.out.print(" "); //这里面意思是输入空格 //注意这里的空格是的确要输入的不然可以在空格里输入一个数字看一看效果
}
for (int ji = 1; ji <=2*i-1; ji++) {//这个for循环的意思是输入*号
//和ji<=2*i-1的意思是;这里2*i-1的意思是在空格后面加入一个*号,第一次循环是
System.out.print("*");
}
System.out.println();//这里的意思在下一次循环的时候换行ln的意思就是换行。而没有ln的就不换行

}
}
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
中天日月也长空
2012-06-01
知道答主
回答量:30
采纳率:0%
帮助的人:22.6万
展开全部
package java4;

public class LX2 {

/**
* @param args
*/
@SuppressWarnings("unused")
public static void main(String[] args) {
// TODO Auto-generated method stub
int a[][]={{1,3,5,7,9},{9,7,5,3,1}};
for (int j = 1; j <= 8; j ++) {
for (int i = 13; i > j + 2; i--) {
System.out.print(" ");
}
for (int k = 0; k < j; k++) {
System.out.print(" *");
}
System.out.println();
}
}

}
希望帮到你
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式