栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

java画空心金字塔

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java画空心金字塔

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

前言一、算法二、代码总结


前言

刚刚学了Java的各种循环和判断语句,其中刚有个练习题是让画空心金字塔,网上的都是使用了三个for循环,先画空格倒三角再画“*”部分。

我经过一些研究,找到了一些计算技巧,于是用一个for嵌套另一个for循环加上若干分支语句搞定,使计算效率提高。

——我的第一个blog


提示:以下是本篇文章正文内容,下面案例可供参考

一、算法

以四行的空心金字塔为例,除了第四行为全部都要“*”外,其余的算法是一样的。

 

我们以第四行的个数为准,位于最前面的位置记为1。那么在第一行,“*”的位置是4,在第二行的“*”是3和5,第三行的“*”是2和6......

因此可以找到规律,第i行第1个“*”的位置:。

第2个的位置是。

其余的位置就都是“ ”(空格)了。

然后第四行就重新分一个支,在小于等于的条件下全部为“*”。

二、代码

代码如下(示例):

package thinking;

public class caculate {
	public static void main (String args[ ]) {
		int lay[] = {1,2,3,4};
        for(int i:lay) {
        	
        	for(int b=1;b<=lay[3]-1+i;b++) {
        		if(b==lay[3] + 1-i && i!=lay[3]) {
        			System.out.print("*");
        		}
        		else if(b==lay[3]-1+i && i!=lay[3]) {
        			System.out.print("*");
        		}
        		else if(i==lay[3]) {
        			System.out.print("*");
        		}
        		else {
        			System.out.print(" ");
        		}
        	}
        	System.out.println();
        }
	}
	}

总结

简简单单的一个算法,作为我的开始吧,希望以后学到新的知识(包括Python Java C SQL等)的知识或者一些机器学习算法模型等,都有经历来记录吧!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/749070.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号