zoukankan      html  css  js  c++  java
  • Java实现蓝桥杯打印图形

    标题:打印图形

    如下的程序会在控制台绘制分形图(就是整体与局部自相似的图形)。

    当n=1,2,3的时候,输出如下:
    请仔细分析程序,并填写划线部分缺少的代码。

    n=1时:
    o
    ooo
    o

    n=2时:
    o
    ooo
    o
    o o o
    ooooooooo
    o o o
    o
    ooo
    o

    n=3时:
    o
    ooo
    o
    o o o
    ooooooooo
    o o o
    o
    ooo
    o
    o o o
    ooo ooo ooo
    o o o
    o o o o o o o o o
    ooooooooooooooooooooooooooo
    o o o o o o o o o
    o o o
    ooo ooo ooo
    o o o
    o
    ooo
    o
    o o o
    ooooooooo
    o o o
    o
    ooo
    o

    源程序:

    注意:只提交划线部分缺少的代码,不要抄写任何已经存在的代码或符号。

    package 第八次模拟;
    
    public class Demo5打印图形 {
    	static void show(byte[][] buf){
    		for(int i=0; i<buf.length; i++){
    			for(int j=0; j<buf[i].length; j++){
    				System.out.print(buf[i][j]==0? ' ' : 'o');
    			}
    			System.out.println();
    		}
    	}
    	
    	static void draw(byte[][] buf, int x, int y, int size){
    		if(size==1){
    			buf[y][x] = 1;
    			return;
    		}
    		
    		int n =  size/3;  // 填空
    		draw(buf, x, y, n);
    		draw(buf, x-n, y ,n);
    		draw(buf, x+n, y ,n);
    		draw(buf, x, y-n ,n);
    		draw(buf, x, y+n ,n);
    	}
    	
    	public static void main(String[] args){
    		final int N = 3;
    		int t = 1;
    		for(int i=0; i<N; i++) t *= 3;
    		
    		byte[][] buf = new byte[t][t];
    		draw(buf, t/2, t/2, t);
    		show(buf);
    	}
    
    }
    
    
  • 相关阅读:
    DRF小结
    js中BOM与DOM的概念与区别
    css单位分析、颜色设置与调色板
    css中伪类与伪元素的区别
    flexbox与grid layout的区别
    grid的简单使用
    position属性的总结
    html,css
    homework
    aboutme and my goal
  • 原文地址:https://www.cnblogs.com/a1439775520/p/12946650.html
Copyright © 2011-2022 走看看