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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • android attrs获取_Android中如何利用attrs和styles定义控件

    android attrs获取_Android中如何利用attrs和styles定义控件一直有个问题就是,Android中是如何通过布局文件,就能实现控件效果的不同呢?比如在布局文件中,我设置了一个TextView,给它设置了textColor,它就能够改变这个TextView的文本的颜色。这是如何做到的呢?我们分3个部分来看这个问题1.attrs.xml2.styles.xml3.看组件的源码。1.attrs.xml:我们知道Android的源码中有attrs.xml这个…

    2022年10月18日
    5
  • 沟通和认同:自我的塑造与展现

    沟通和认同:自我的塑造与展现一、沟通和自我1、自我概念:指对自己所持有的相对稳定的知觉2、自尊:对自我价值的评估3、反映评价:我们每个人得出的自我概念反映的是我们认为别人看待我们的方式4、社会比较:依据与他人对照的方式评估自身5、自我概念是被周遭环境塑造出来的,塑造的过程以两种方式呈现:反映评价和社会比较6、自我概念的特征:6.1、自我概念是主观的(有些人长期乃至永久地经受着过度的自我怀疑和批判之苦)(当我们经历负面情绪的时候要比我们心情好时对自己更挑剔)6.2、自我概念抗拒改变7、接受一个

    2022年6月25日
    30
  • 编辑器、编译器、文件、IDE等常见概念辨析

    编辑器、编译器、文件、IDE等常见概念辨析

    2021年10月6日
    52
  • 网页设计与制作入门_网页设计基本步骤

    网页设计与制作入门_网页设计基本步骤初涉网页设计

    2022年9月21日
    2
  • DTW和DBA_电台文本

    DTW和DBA_电台文本DTW(动态时间调整)动态时间调整算法是大多用于检测两条语音的相似程度,由于每次发言,每个字母发音的长短不同,会导致两条语音不会完全的吻合,动态时间调整算法,会对语音进行拉伸或者压缩,使得它们竟可能

    2022年8月3日
    7
  • Navicat for MySQL注册码_navicat永久激活

    Navicat for MySQL注册码_navicat永久激活姓名(Name):(随便填)组织(Organization):(随便填)注册码(Serial):NAVJ-W56S-3YUU-MVHV–NavicatforSQLServerV10.0.10NAVD-3CG2-6KRN-IEPMNAVL-NIGY-6MYY-XWQENAVI-C3UU-AAGI-57FW-NavicatPremium注册码NAVJ-E6YF…

    2022年10月13日
    2

发表回复

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

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