Add tasks for all the new languages

This commit is contained in:
Tina Müller 2016-12-05 23:44:36 +01:00
parent 9dc3c2bb62
commit bba7bfd280
13208 changed files with 134745 additions and 0 deletions

View file

@ -0,0 +1,16 @@
PROGRAM SIERPINSKY
!$INCLUDE="PC.LIB"
BEGIN
ORDER%=8
SIZE%=2^ORDER%
SCREEN(9)
GR_WINDOW(0,0,520,520)
FOR Y%=0 TO SIZE%-1 DO
FOR X%=0 TO SIZE%-1 DO
IF (X% AND Y%)=0 THEN PSET(X%*2,Y%*2,2) END IF
END FOR
END FOR
GET(K$)
END PROGRAM

View file

@ -0,0 +1,24 @@
' version 06-07-2015
' compile with: fbc -s console or with: fbc -s gui
#Define black 0
#Define white RGB(255,255,255)
Dim As Integer x, y
Dim As Integer order = 9
Dim As Integer size = 2 ^ order
ScreenRes size, size, 32
Line (0,0) - (size -1, size -1), black, bf
For y = 0 To size -1
For x = 0 To size -1
If (x And y) = 0 Then PSet(x, y) ' ,white
Next
Next
' empty keyboard buffer
While Inkey <> "" : Wend
WindowTitle "Hit any key to end program"
Sleep
End

View file

@ -0,0 +1,44 @@
load "guilib.ring"
new qapp
{
win1 = new qwidget() {
setwindowtitle("drawing using qpainter")
setgeometry(100,100,500,500)
label1 = new qlabel(win1) {
setgeometry(10,10,400,400)
settext("")
}
new qpushbutton(win1) {
setgeometry(200,400,100,30)
settext("draw")
setclickevent("draw()")
}
show()
}
exec()
}
func draw
p1 = new qpicture()
color = new qcolor() {
setrgb(0,0,255,255)
}
pen = new qpen() {
setcolor(color)
setwidth(1)
}
new qpainter() {
begin(p1)
setpen(pen)
order = 7
size = pow(2,order)
for y = 0 to size-1
for x = 0 to size-1
if (x & y)=0 drawpoint(x*2,y*2) ok
next
next
endpaint()
}
label1 { setpicture(p1) show() }

View file

@ -0,0 +1,35 @@
func sierpinski_triangle(n) -> Array {
var triangle = ['*']
{ |i|
var sp = (' ' * Math.pow(2, i-1));
triangle = (triangle.map {|x| sp + x + sp} +
triangle.map {|x| x + ' ' + x})
} * n
triangle
}
class Array {
method to_png(scale=1, bgcolor='white', fgcolor='black') {
static gd = require('GD::Simple')
var width = self.max_by{.len}.len
self.map!{|r| "%-#{width}s" % r}
var img = gd.new(width * scale, self.len * scale)
for i in ^self {
for j in RangeNum(i*scale, i*scale + scale) {
img.moveTo(0, j)
for line in (self[i].scan(/(\s+|\S+)/)) {
img.fgcolor(line.contains(/\S/) ? fgcolor : bgcolor)
img.line(scale * line.len)
}
}
}
img.png
}
}
var triangle = sierpinski_triangle(8)
var raw_png = triangle.to_png(bgcolor:'black', fgcolor:'red')
File('triangle.png').write(raw_png, :raw)