java编写金字塔

news/2024/10/22 16:38:54/

一、实心金字塔

首先,尝试写一个逐层加1个*的金字塔:
可以看出,每一层由空格和*组成,且空格+*的总数为底部基石的数量,那么前后空格数就是(底部基石数 - 各层星星数)*1/2,然后拼接字符串打印空格+*+空格即可(注意:java直接/会取整)
在这里插入图片描述
然而在计算机显示中,每行列都是垂直对应,可以从上图结果看出,逐层加*并不能保证对其,但保留奇数行可以得到一个正三角金字塔。那么跳过偶数行打印,即可得到一个正三角的金字塔:
在这里插入图片描述
最终代码如下:

public class Test{public static void main(String[] args){int starNum = 7;System.out.println("start=" + starNum);for(int i = 1; i <= starNum;i += 2){String str = "";for(int m=0;m<(starNum - i)/2;m++){str += " ";}for(int n=0;n<i;n++){//can changestr += "*";}for(int m=0;m<(starNum - i)/2;m++){str += " ";}System.out.print(str + "\n");}}
}

二、平均分布金字塔

星星交叉分布效果:
在这里插入图片描述
代码只需修改打印*位置的循环,间隔显示*空格

for(int n = 0;n < i;n++){//can changeif(n % 2 == 0){str += "*";}else{str += " ";}//或简化成三目运算//str += n % 2 == 0 ? "*" : " "; 
}

三、空心金字塔

边缘为*,描绘一个金字塔的形状,效果如下:
在这里插入图片描述
同理,代码只需修改打印*位置的循环,在输出*的字段中,始末位置为*,其余位置为空格,且最后一行全部为*

				for(int n=0;n<i;n++){//can changeif(i<starNum){if((n==0)||(n==i-1)){str+="*";}else{str+=" ";}//或者简化为三目运算//str += n==0||n==i-1?"*":" ";}else{str+="*";}}

补充:
前端转后端的童鞋注意了,在java中,三目运算符不能在里面写赋值语句,这点和js不一样。比如(n > 2) ? (str = "*") : (str = "%");,这句话前端js可以编译通过,但如果放到java里就会编译不通过,报错:不是语句。java中应当这样写:str = n > 2 ? "*" : "%"


http://www.ppmy.cn/news/499605.html

相关文章

乐创文娱:正与法院协商撤销“失信被执行人”事宜

【TechWeb】2月18日消息&#xff0c;针对乐视影业被列为“失信被执行人”一事&#xff0c;乐创文娱今日在官方微博回应称&#xff0c;此事主要因乐视影业对仲裁结果存在异议&#xff0c;沟通过程中存在信息不畅的情况&#xff0c;目前正与法院协商撤销事宜。 2月15日&#xff0…

设置表格table斑马格颜色

even odd偶数行和奇数行 分开设置 .tabledata tbody tr:nth-child(even) {background-color: #073767;}.tabledata tbody tr:nth-child(odd) {background-color: #062b57;}表头颜色 .tabledata thead th {background-color: #0B4876; } .tabledata自己表格类名

乐创文娱面试

面试岗位&#xff1a;数据实习生 面试时间&#xff1a;19年5月22日 面试地点&#xff1a;乐创文娱公司 面试过程&#xff1a;一共有两面&#xff0c;第一面是hr面&#xff0c;主要问了一些基本情况&#xff0c;比如实习时间&#xff0c;入职时间。还问了策划活动方面的一些东西…

乐创 2022-6-1 机试题

1、快乐数 数字 的各个位 的平方 一直累加到为个位&#xff0c;且结果是1就是快乐数&#xff08;简单题&#xff0c;AC&#xff09; class Solution1 {/*** 代码中的类名、方法名、参数名已经指定&#xff0c;请勿修改&#xff0c;直接返回方法规定的值即可* param n int整型…

EtherCAT运动控制器的PLC编程(三) 电子齿轮

EtherCAT运动控制器的PLC编程(三) 电子齿轮 电子齿轮模式能够将两轴或多轴联系起来&#xff0c;实现精确的同步运动&#xff0c;从而替代传统的机械齿轮连接。 被跟随的轴称为主轴&#xff0c;跟随的轴为从轴&#xff0c;通过将跟随轴按照某个比率连接到主轴上&#xff0c;从而…

【朝夕教育】2023年03月 其他-运动控制和机器视觉面试题(34道)

文章目录 一、运动控制和机器视觉1、什么是运动控制2、运动控制卡和运动控制器有区别吗&#xff1f;3、运动控制系统的主要组成部分有哪些&#xff1f;4、运动控制系统包含那些分类&#xff1f;5、运动控制器应用的领域有哪些&#xff1f;6、步进电机与伺服电机有哪些区别&…

【愚公系列】2023年03月 其他-运动控制和机器视觉面试题(34道)

文章目录 一、运动控制和机器视觉1、什么是运动控制2、运动控制卡和运动控制器有区别吗&#xff1f;3、运动控制系统的主要组成部分有哪些&#xff1f;4、运动控制系统包含那些分类&#xff1f;5、运动控制器应用的领域有哪些&#xff1f;6、步进电机与伺服电机有哪些区别&…

人工智能在音乐领域的研究早在多年前就已经开始

在人工智能技术迅速发展的当下&#xff0c;越来越多的领域被这项技术注入新的活力。作为多媒体领域中不可缺少的组成部分&#xff0c;音乐对于人类的重要性不言而喻。值得一提的是&#xff0c;人工智能在音乐领域的研究早在多年前就已经开始了&#xff0c;并且也落地了很多成熟…