java如何打印菱形_JAVA输出菱形

java如何打印菱形_JAVA输出菱形菱形的打印方式,通过确定中间行,确定奇数然后做的处理,思路:上面部分通过确定打印数量为奇数,然后采用公式计算出奇数来,下面因为空格数量就是总行数减中间行数-1计算的,这样就可以计算出要打印的*的数量publicclassTestFile{ publicstaticvoidmain(String[]args){ //TODOAuto-generatedm…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

菱形的打印方式,通过确定中间行,确定奇数然后做的处理,

思路:上面部分通过确定打印数量为奇数,然后采用公式计算出奇数来,下面因为空格数量就是总行数减中间行数-1计算的,

这样就可以计算出要打印的* 的数量

public class TestFile {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		int line=9;//7行菱形,中间行为7个*,上下都是3行,一共7行,必须是奇数
		
		for(int i=0;i<line;i++){ //控制显示行
			//确定中间行;
			int midline=(line-1)/2;			
			if(i==midline)			
			{
			  for(int j=0;j<line;j++){ //打印中间行
			     System.out.print("*");	  
			  }			  
			  System.out.println();
			}
			else
			{
				 if(i<midline){ //打印上面的
					 printTopInfo((i+1),line);
				 }
				 else if(i>midline){ //打印下面的
					 printButtomInfo((i-midline),line);
				 }
			}
		}
	}
	//打印上面的
	static void printTopInfo(int i,int count){
		
		//奇数
		int empnum=2*(i-1)+1;
		
	    for(int j=0;j<(count-empnum)/2;j++){  //打印前面
	    	System.out.print(" ");
	    }
	    
	    for(int j=0;j<empnum;j++){  //打印中间
	    	System.out.print("*");
	    }	    
	    
	    for(int j=0;j<(count-empnum)/2;j++){  //打印前面
	    	System.out.print(" ");
	    }
	    
	    System.out.println("");
	}
	
	//打印下面的
	static void printButtomInfo(int i,int count){
		
		for(int j=0;j<i;j++){  //打印前面
	    	System.out.print(" ");
	    }
		
	    for(int j=0;j<(count-i*2);j++){  //打印中间
	    	System.out.print("*");
	    }
	    
	    for(int j=0;j<i;j++){  //打印前面
	    	System.out.print(" ");
	    }
	    
	    System.out.println("");
	}
}

 显示效果                                                    java如何打印菱形_JAVA输出菱形

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/187950.html原文链接:https://javaforall.net

(1)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • networkmanager配置文件在哪_需要运行networkmanager

    networkmanager配置文件在哪_需要运行networkmanager原文链接http://live.gnome.org/action/login/NetworkManagerConfiguration 本文对了解NetworkManager的使用和开发有很大帮助,澄清了一些NetworkManager中使用的概念,对阅读源代码和修改Bug有很大的帮助。 设置服务(SettingsServices)通过D-Bus服务提供配置给N

    2022年10月4日
    2
  • vue模板渲染 mustache简单实现[通俗易懂]

    vue模板渲染 mustache简单实现[通俗易懂]vue源码探究,模板渲染,实现mustache的渲染功能

    2022年7月19日
    12
  • 数据可视化发挥流程的价值——江汽物流数据监控平台建设经验

    数据可视化发挥流程的价值——江汽物流数据监控平台建设经验一年的时间,江汽物流沉淀出一套流程可视化的经验。这里拿出来一同探讨。

    2022年6月1日
    41
  • Macbook OBS 录制系统声音

    Macbook OBS 录制系统声音安装好OBS软件下载并安装soundflower软件,也可以在GitHub中下载打开midi音频设置构建多输出设备例如,我现在是带着外置耳机,并且录制系统声音,那么多输出设备就勾选这两个配置完成后,我们可以右键选择该设备用于声音输出最后在OBS软件中选择桌面音频即可,点击Soundflower…

    2022年5月27日
    53
  • 光栅化 (Rasterization)

    光栅化 (Rasterization)上一篇文章讨论了如何在多边形的某一点上分配光强度值,这里主要讨论如何为多边形确定实际的像素,即在栅格屏幕上的对应位置,这个过程称为光栅化(Rasterization)或者扫描转换(Scanconv

    2022年8月4日
    13
  • mybatis返回map集合_java遍历map的key和value

    mybatis返回map集合_java遍历map的key和value匿名用户1级2018-06-10回答一、概述MyBatis中在查询进行select映射的时候,返回类型可以用resultType,也可以用resultMap,resultType是直接表示返回类型的,而resultMap则是对外部ResultMap的引用,但是resultType跟resultMap不能同时存在。在MyBatis进行查询映射时,其实查询出来的每一个属性都是放在一个对应的Map里面…

    2022年10月5日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号