| Код | Private Sub Command1_Click() For Y = 1 To kol For X = 1 To kol a(X, Y) = 0 Next X Next Y radius = 250 ' радиус ячейки в пикселя kol = 20 ' Количество рядов a(Int(kol / 2), 0) = 1 ' первая единица, от которой и растет треугольник DrawWidth = 1 ' Толщина линии For Y = 0 To kol For X = 1 To kol sdvig = radius / 2 * (-1) ^ Y ' Сдвиг каждого ряда то влево, то вправо If Y > 0 Then If sdvig > 0 Then a(X, Y) = a(X + 1, Y - 1) + a(X - 0, Y - 1) Else a(X, Y) = a(X + 0, Y - 1) + a(X - 1, Y - 1) End If End If X1 = 60 + X * radius * 2 + sdvig Y1 = 10 + Y * radius * 1.7 If a(X, Y) > 0 Then ForeColor = RGB(0, 0, 0) Form1.PSet (X1, Y1), RGB(255, 255, 255) Print a(X, Y) End If Next X Next Y End Sub
Private Sub Command2_Click() For Y = 1 To kol For X = 1 To kol a(X, Y) = 0 Next X Next Y radius = 250 ' радиус ячейки в пикселя kol = 20 ' Количество рядов a(Int(kol / 2), 0) = 1 ' первая единица, от которой и растет треугольник DrawWidth = 1 ' Толщина линии For Y = 0 To kol For X = 1 To kol sdvig = radius / 2 * (-1) ^ Y ' Сдвиг каждого ряда то влево, то вправо If Y > 0 Then If sdvig > 0 Then a(X, Y) = a(X + 1, Y - 1) + a(X - 0, Y - 1) Else a(X, Y) = a(X + 0, Y - 1) + a(X - 1, Y - 1) End If End If X1 = 60 + X * radius * 2 + sdvig Y1 = 10 + Y * radius * 1.7 FillStyle = 0 FillColor = RGB(255, 255, 255) ' Цвет заливки If a(X, Y) > 0 Then If a(X, Y) Mod 2 = 1 Then FillColor = RGB(0, 0, 0) Circle (X1, Y1), radius, RGB(90, 90, 90) End If End If Next X Next Y End Sub
Private Sub Command3_Click() For Y = 1 To kol For X = 1 To kol a(X, Y) = 0 Next X Next Y radius = 250 ' радиус ячейки в пикселя kol = 20 ' Количество рядов a(Int(kol / 2), 0) = 1 ' первая единица, от которой и растет треугольник DrawWidth = 1 ' Толщина линии For Y = 0 To kol For X = 1 To kol sdvig = radius / 2 * (-1) ^ Y ' Сдвиг каждого ряда то влево, то вправо If Y > 0 Then If sdvig > 0 Then a(X, Y) = a(X + 1, Y - 1) + a(X - 0, Y - 1) Else a(X, Y) = a(X + 0, Y - 1) + a(X - 1, Y - 1) End If End If X1 = 60 + X * radius * 2 + sdvig Y1 = 10 + Y * radius * 1.7 FillStyle = 0 r = 0: g = 0: b = 0 If a(X, Y) > 0 Then If (a(X, Y) - Int(a(X, Y) / 2) * 2) = 0 Then r = 250 'If (a(X, Y) / 4) - Int(a(X, Y) / 4) = 0 Then r = 120 'If (a(X, Y) / 8) - Int(a(X, Y) / 8) = 0 Then r = 180 'If (a(X, Y) / 16) - Int(a(X, Y) / 16) = 0 Then r = 250 'If (a(X, Y) / 3) - Int(a(X, Y) / 3) = 0 Then g = 60 If (a(X, Y) / 9) - Int(a(X, Y) / 9) = 0 Then g = 250 'If (a(X, Y) / 7) - Int(a(X, Y) / 7) = 0 Then g = 180 'If (a(X, Y) / 5) - Int(a(X, Y) / 5) = 0 Then g = 250 If (a(X, Y) / 11) - Int(a(X, Y) / 11) = 0 Then b = 250 'If (a(X, Y) / 13) - Int(a(X, Y) / 13) = 0 Then b = 120 'If (a(X, Y) / 17) - Int(a(X, Y) / 17) = 0 Then b = 180 'If (a(X, Y) / 19) - Int(a(X, Y) / 19) = 0 Then b = 250 ForeColor = RGB(r, g, b) FillColor = RGB(r, g, b) ' Цвет заливки Circle (X1, Y1), radius, RGB(90, 90, 90) End If Next X Next Y End Sub
|
Рисует на форме треугольник паскаля, цветной, с цифорками. Добавлено @ 09:42 Ой забыл, закоментированный строчки, можно разкоментить и получишь другие цвета заполнения кружков.
| Код | 'If (a(X, Y) / 4) - Int(a(X, Y) / 4) = 0 Then r = 120 'If (a(X, Y) / 8) - Int(a(X, Y) / 8) = 0 Then r = 180 'If (a(X, Y) / 16) - Int(a(X, Y) / 16) = 0 Then r = 250 'If (a(X, Y) / 3) - Int(a(X, Y) / 3) = 0 Then g = 60 If (a(X, Y) / 9) - Int(a(X, Y) / 9) = 0 Then g = 250 'If (a(X, Y) / 7) - Int(a(X, Y) / 7) = 0 Then g = 180 'If (a(X, Y) / 5) - Int(a(X, Y) / 5) = 0 Then g = 250 If (a(X, Y) / 11) - Int(a(X, Y) / 11) = 0 Then b = 250 'If (a(X, Y) / 13) - Int(a(X, Y) / 13) = 0 Then b = 120 'If (a(X, Y) / 17) - Int(a(X, Y) / 17) = 0 Then b = 180 'If (a(X, Y) / 19) - Int(a(X, Y) / 19) = 0 Then b = 250
| |