Нарисовать квадрат, внутри которого окружность - VB

Формулировка задачи:

Здравствуйте, помогите найти ошибку в коде. Рисует слишком много лишнего. Изменяла центр окружности, радиус - получалось только хуже
Private Sub Command1_Click()
 
 
Const pi As Single = 3.14159265359
 
For i = 0 To 10 Step 1
For z = 0 To 10 Step 1
For r = 10 To 0 Step -1
 
 
Picture1.Line (0, 10)-(-i, 10), vbRed
Picture1.Line (0, 10)-(i, 10), vbRed
 
Picture1.Line (10, 0)-(10, i), vbRed
Picture1.Line (10, 0)-(10, -i), vbRed
 
Picture1.Line (0, -10)-(-i, -10), vbRed
Picture1.Line (0, -10)-(i, -10), vbRed
 
Picture1.Line (-10, 0)-(-10, i), vbRed
Picture1.Line (-10, 0)-(-10, -i), vbRed
 
 
 
Picture1.Circle (z, -z), r, vbRed, 3 * pi / 2, 2 * pi
Picture1.Circle (z, z), r, vbRed, 2 * pi, pi / 2
Picture1.Circle (-z, z), r, vbRed, pi / 2, pi
Picture1.Circle (-z, -z), r, vbRed, pi, 3 * pi / 2
 
 
Next r
 
Next z
Next i
 
End Sub
В итоге нужно,чтобы получился квадрат, внутри которого окружность и остаться тот треугольник дуг как на картинке,с 4 сторон Как я поняла, радиус рисуется от 1 до 10,хотя нужно наоборот- с движением центра по диагонали - уменьшать радиус. Не понимаю,почему рисует наоборот, и почему откуда он берет так много циклов

Код к задаче: «Нарисовать квадрат, внутри которого окружность - VB»

textual
Private Sub Command1_Click()
    Const pi As Single = 3.14159265359
    r = 10
    Picture1.Line (-r, r)-(r, r), vbRed
    Picture1.Line (-r, r)-(-r, -r), vbRed
    Picture1.Line (r, r)-(r, -r), vbRed
    Picture1.Line (-r, -r)-(r, -r), vbRed
    For z = r To 0 Step -1
          Picture1.Circle (z, -z), r - z, vbRed, 3 * pi / 2, 2 * pi
          Picture1.Circle (z, z), r - z, vbRed, 2 * pi, pi / 2
          Picture1.Circle (-z, z), r - z, vbRed, pi / 2, pi
          Picture1.Circle (-z, -z), r - z, vbRed, pi, 3 * pi / 2
    Next z
End Sub
Эта работа вам не подошла?

Вы всегда можете заказать любую учебную работу у наших авторов от 20 руб.

14   голосов, оценка 4.286 из 5


СДЕЛАЙТЕ РЕПОСТ