欢迎来到天天文库
浏览记录
ID:3929606
大小:181.78 KB
页数:4页
时间:2017-11-25
《java实现打印菱形的方法》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、EDITBYZohooZhouDOCNo.JAVA‐YM‐20160701001JAVA实现打印菱形的方法一、打印实心菱形1.方法1(1)思路——左右拆分以总层数作为外层循环次数,用“System.out.println();”来换行,然后每行先画空格,空格的规律是“(总层数+1)/2‐层号”的绝对值;其后再画◆,由于上下半层菱形的个数规律不一样,因此拆分成两部分分别进行画,上半层规律是“2*层号‐1”递增,下半层是“(总层数‐层号)*2+1”递减。(2)源码publicstaticvoidmain(String[]args){intlay=7;//菱形的层数for(inti=1;i<
2、=lay;i++){//打印层数for(intj=Math.abs((lay+1)/2‐i);j>0;j‐‐){//打印每行的空格System.out.print("u0020u0020u0020u0020");}if(i<=(lay+1)/2)//上半层画◆for(intm=1;m<=2*i‐1;m++){System.out.print("◆");}else//下半层画◆for(intn=(lay‐i)*2+1;n>0;n‐‐){System.out.print("◆");//打印◆}System.out.println();//强制换行}}(3)实现效果TITLEJAVA
3、实现打印菱形的方法DATE2016/7/1PAGE第1页共4页EDITBYZohooZhouDOCNo.JAVA‐YM‐201607010012.方法2(1)思路——上下拆分以总层数作为外层循环次数,用“System.out.println();”来换行,分拆成上下两层,分别为两个金字塔,上层分别打印空格(规律为“((总层数+1)/2)‐层数”递减);打印♣(规律为“2*层数‐1”递增);下层分别打印空格(规律为“层数‐(总层数+1)/2”递增),打印♣(规律为“((总层数‐层数)/2)+1”递减)(2)源码intlay=11;//菱形的层数for(inti=1;i<=lay;i++)
4、{//打印层数if(i<=(lay+1)/2){//上半截菱形for(intj=(lay+1)/2‐i;j>0;j‐‐){System.out.print("u0020u0020u0020u0020");//打印空格}for(intk=1;k<=2*i‐1;k++){System.out.print("◆");//打印◆}}else{//下半截菱形for(intm=1;m<=i‐(lay+1)/2;m++){System.out.print("u0020u0020u0020u0020");//打印空格}}for(intn=(lay‐i)*2+1;n>0;n‐‐){Sys
5、tem.out.print("◆");//打印◆}}System.out.println();//强制换行}(3)实现效果TITLEJAVA实现打印菱形的方法DATE2016/7/1PAGE第2页共4页EDITBYZohooZhouDOCNo.JAVA‐YM‐20160701001二、打印镂空菱形1.基于方法2实现镂空菱形的打印(1)思路——上下拆分先实现实心菱形的打印:以总层数作为外层循环次数,用“System.out.println();”来换行,然后每行先画空格,空格的规律是“(总层数+1)/2‐层号”的绝对值;其后再画◆,由于上下半层菱形的个数规律不一样,因此拆分成两部分分别进
6、行画,上半层规律是“2*层号‐1”递增,下半层是“(总层数‐层号)*2+1”递减。然后根据规律,除了每行每次打印◆的时候,其实就是第一个和最后一个打印,也就是说只需要在打印◆的代码行加入判断,当循环执行参数为1或者最后一个时,打印◆,其他时候都打印空格就行了。(2)源码intlay=11;//菱形的层数for(inti=1;i<=lay;i++){//打印层数if(i<=(lay+1)/2){//上半截菱形for(intj=(lay+1)/2‐i;j>0;j‐‐){System.out.print("u0020u0020u0020u0020");//打印空格}for(intk=
7、1;k<=2*i‐1;k++){if(k==1
8、
9、k==2*i‐1){System.out.print("◆");//打印首尾◆}elseSystem.out.print("u0020u0020u0020u0020");//打印镂空空格}}else{//下半截菱形for(intm=1;m<=i‐(lay+1)/2;m++){System.out.print("u0020u0020u0020u0020");//打印空格}}for(
此文档下载收益归作者所有