在java中编一个可以输出星号金字形状的程序,挂上详解!重谢
3个回答
展开全部
用星号来打印金字塔,有一定的规律:
1、中心对齐;
2、从上往下,每一层的星星个数都是奇数,而且每一层星星数量可以用以下公式来计算:2*n-1;
3、每一层前面都会出现空位,前面的空位数为当前层数减1,即满足公式:n-1
根据上述规律,我们得出如下算法:
public void testKing() {
// 定义金字塔层数
int n = 7;
for (int i = 1; i <= n; i++) {
// 第一层循环,打印出对应的层数
for (int k = 1; k <= n - i; k++) {
// 本层循环,打印出当前层的空位
// 空位数为当前层数减1,即满足公式:n-1
System.out.print(" ");
}
for (int j = 1; j <= 2 * i - 1; j++) {
// 本层循环,打印出当前层的星星个数
// 每一层的星星个数都是奇数,且数量可以用以下公式来计算:2*n-1
System.out.print("*");
}
// 打印出一个换行
System.out.println();
}
}
结果示例:
*
***
*****
*******
*********
***********
*************
更多追问追答
追问
还是求不出来啊!-_-||
追答
什么叫求不出来,不知道你什么意思。
难道是不会运行?不明白你意思。下面给你一个完整的class类:
public class TestClass {
public static void main(String[] args) {
// 定义金字塔层数
int n = 7;
for (int i = 1; i <= n; i++) {
// 第一层循环,打印出对应的层数
for (int k = 1; k <= n - i; k++) {
// 本层循环,打印出当前层的空位
// 空位数为当前层数减1,即满足公式:n-1
System.out.print(" ");
}
for (int j = 1; j <= 2 * i - 1; j++) {
// 本层循环,打印出当前层的星星个数
// 每一层的星星个数都是奇数,且数量可以用以下公式来计算:2*n-1
System.out.print("*");
}
// 打印出一个换行
System.out.println();
}
}
}
展开全部
public static void input(){
Scanner sc=new Scanner(System.in);
System.out.print("请输入一个数:");
int num=sc.nextInt();
int index=0;
for(int i=2;i<num;i++){
if(num%i==0){
index++;
}
}
if(index==0){
System.out.println("这是个质数");
}
else{
System.out.println("这是个合数");
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询