#!/usr/bin/ruby cols,lines = 79, 30 minre,minim = -2.0, -1.0 maxre,maxim = 1.0, 1.0 chars = ' .,-:/=HOAM%&$#@_' maxiter = chars.length-1 im=minim lines.times do |y| re=minre cols.times do |x| zr,zi = re,im n=0 maxiter.times do |n| a,b = zr*zr, zi*zi break if a+b > 4.0 zr,zi = a-b+re, 2*zr*zi+im n += 1 end print chars.slice(n,1) re += (maxre-minre)/cols end im += (maxim-minim)/lines puts end =begin (This is a comment) This program outputs the following diagram: ......,,,,,,,,,,,,,,,,,,,,,--------:::/=O#O_#/:-----,,,,,,............. .....,,,,,,,,,,,,,,,,,,,,,---------:::/==HM_AH=/:------,,,,,,........... ....,,,,,,,,,,,,,,,,,,,,,---------::::/H%%&__#AA/::::-----,,,,,,......... ...,,,,,,,,,,,,,,,,,,,,,---------::///==O&______&H=/::::----,,,,,,,....... ...,,,,,,,,,,,,,,,,,,,,--------::////===HA$______%HH=////::---,,,,,,,...... ..,,,,,,,,,,,,,,,,,,-------::::/H_##OOM_%_@______#_M@%H==H%=:--,,,,,,,..... ..,,,,,,,,,,,,,,,,,-----:::::://=H%___#_______________@M%____/:--,,,,,,,.... ..,,,,,,,,,,,,,,,,---::::::::///=HOM________________________$H/::-,,,,,,,,... .,,,,,,,,,,,,,---://:::::::////=&__________________________#A=/::--,,,,,,,,.. ,,,,,,,,,-----::/OA===========HHA$__________________________#AOH:---,,,,,,,,. .,,,,,-------::://O$MMAO&$OOOHHOA_______________________________H:---,,,,,,,,. ,,,--------:::::/=HO&_________MM&______________________________O/:---,,,,,,,,, ,--------::::::===%M___________#_______________________________@/:----,,,,,,,, -------:::///=HMOA%____________________________________________=::----,,,,,,,, :::::==///===OO&______________________________________________=/::----,,,,,,,, #____________________________________________________________MH=/::----,,,,,,,, :::::==///===OO&______________________________________________=/::----,,,,,,,, -------:::///=HMOA%____________________________________________=::----,,,,,,,, ,--------::::::===%M___________#_______________________________@/:----,,,,,,,, ,,,--------:::::/=HO&_________MM&______________________________O/:---,,,,,,,,, .,,,,,-------::://O$MMAO&$OOOHHOA_______________________________H:---,,,,,,,,. ,,,,,,,,,-----::/OA===========HHA$__________________________#AOH:---,,,,,,,,. .,,,,,,,,,,,,,---://:::::::////=&__________________________#A=/::--,,,,,,,,.. ..,,,,,,,,,,,,,,,,---::::::::///=HOM________________________$H/::-,,,,,,,,... ..,,,,,,,,,,,,,,,,,-----:::::://=H%___#_______________@M%____/:--,,,,,,,.... ..,,,,,,,,,,,,,,,,,,-------::::/H_##OOM_%_@______#_M@%H==H%=:--,,,,,,,..... ...,,,,,,,,,,,,,,,,,,,,--------::////===HA$______%HH=////::---,,,,,,,...... ...,,,,,,,,,,,,,,,,,,,,,---------::///==O&______&H=/::::----,,,,,,,....... ....,,,,,,,,,,,,,,,,,,,,,---------::::/H%%&__#AA/::::-----,,,,,,......... .....,,,,,,,,,,,,,,,,,,,,,---------:::/==HM_AH=/:------,,,,,,........... =end