Java打印M图形(二维数组)——(九)
2017-08-02 22:30
429 查看
对于平面图形输出集合图形与数字组合的,用二维数组。先在Excel表格中分析一下,找到简单的规律。二维数组的行数为行高,列数为最后一个数大小。
对于减小再增大再减小再增大的,可以用一个boolean标志其是增加还是减小状态,减到最小时将其[b]标志设为相反的并改变这时的初值大小。[/b]
效果:
Excel中分析
测试:
测试:
对于减小再增大再减小再增大的,可以用一个boolean标志其是增加还是减小状态,减到最小时将其[b]标志设为相反的并改变这时的初值大小。[/b]
效果:
Excel中分析
Java代码:
package Java_Test; public class PrintM { /* 3 7 2 4 6 8 1 5 9 平面图形(二维数组) */ public static void main(String[] args) { int atr[][]=new int[3][9]; // 产生9个数,放入对应位置 boolean flag=false; //false代表横坐标在减小,true代表在增大 // 初始位置 int x=2; int y=0; for(int i=1;i<=9;i++){ // 放入第一个数 atr[x][y]=i; // y始终在增大 y++; if(!flag){ //如果x在减小让其自减 x--; } if(flag){ x++; } if(x<0){ //x减到0,再减为-1 flag=true; x=x+2; } if(x>2){ //x加2,再加为3 flag=false; x=x-2; } } for(int i=0;i<3;i++){ for(int j =0;j<9;j++){ if(atr[i][j]==0){ System.out.print(" "); }else{ System.out.print(atr[i][j]); } } System.out.println(); } } }
测试:
-------------------------------------------------------输入n个数输出M的改造--------------------------------
package Java_Test; import org.junit.Test; public class PrintM_duogeshu { /* * * 3 7 2 4 6 8 1 5 9 平面图形(二维数组) * */ public static void test1(int num) { int height = (num / 4) + 1; // 4条边 int atr[][] = new int[height][num]; // 产生9个数,放入对应位置 boolean flag = false; // false代表横坐标在减小,true代表在增大 // 初始位置 int x = height-1; int y = 0; for (int i = 1; i <= num; i++) { // 放入第一个数 atr[x][y] = i; // y始终在增大 y++; if (!flag) { // 如果x在减小让其自减 x--; } if (flag) { x++; } if (x < 0) { // x减到0,再减为-1 flag = true; x = x + 2; } if (x > height-1) { // x加2,再加为3 flag = false; x = x - 2; } } for (int i = 0; i < atr.length; i++) { for (int j = 0; j < atr[i].length; j++) { if (atr[i][j] == 0) { System.out.print(" "); } else { System.out.print(atr[i][j]); } } System.out.println(); } } @Test public void test(){ PrintM_duogeshu.test1(13); } }
测试:
相关文章推荐
- java打印九九乘法表,嵌套for循环,二维数组
- Java图形及9x9乘法表的打印
- Java打印常见图形
- JAVA学习之旅--打印图形
- java中使用二重循环打印图形
- JAVA学习笔记_打印图形练习
- java 声明一个二维数组循环输入六个名字并按3*2打印
- java08双重循环打印图形
- 运用Java二维数组打印“魔方阵”。所谓魔方阵是指这样的矩阵,它的每一行、每一列和对角线之和均相等,要求打印1~25之间由自然数构成的魔方阵。
- Java打印二维数组
- Java实例-for循环打印各种图形
- java打印五星图形,字符串数组
- 用java打印各种图形
- 分享java打印简单图形的实现代码
- Java读取excel指定sheet中的各行数据,存入二维数组,包括首行,并打印
- java图形打印问题
- 1119相应代码 包含素数 闰年 测地址 输入字符串 打印图形和二维数组等
- Java打印常见图形
- java实现 逆时针打印二维数组
- javafor循环打印图形