Рисование окружностей - Visual Basic .NET

Узнай цену своей работы

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

Требуется нарисовать концентрические окружности уменьшающегося радиуса. Радиус каждой следующей окружности равен 9/10 радиуса предыдущей. Рисование прекращается, когда радиус становится равным минимальному значению Rmin = 1.
Листинг программы
  1. Public Class Form1
  2. Dim R As Single
  3. Dim Rmin As Single
  4. Dim graphics As Graphics
  5. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  6. graphics = PictureBox1.CreateGraphics()
  7. R = 8
  8. Rmin = 1
  9. Call ConcentricCricles(R, Rmin)
  10. End Sub
  11. Sub ConcentricCricles(ByVal R As Single, ByVal Rmin As Single)
  12. If R > Rmin Then
  13. graphics.DrawEllipse(Pens.Black, 0, 0, R, R)
  14. R = 0.9 * R
  15. Call ConcentricCricles(R, Rmin)
  16. End If
  17. End Sub
  18. End Class
Не могу понять как именно делать вывод, на форме ничего нет.

Решение задачи: «Рисование окружностей»

textual
Листинг программы
  1. Public Class Form1
  2.     Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  3.         Dim h As New Bitmap(Me.Width, Me.Height)
  4.         Dim g As Graphics = Graphics.FromImage(h)
  5.  
  6.         g.TranslateTransform(Me.Width \ 2 - 10, Me.Height \ 2 - 10)
  7.  
  8.         Dim R As Single = Me.Width - 10
  9.         Dim Rmin As Single = 1
  10.         Do While R > Rmin
  11.             g.DrawEllipse(Pens.Black, -(R \ 2), -(R \ 2), R, R)
  12.             R = 0.8 * R
  13.         Loop
  14.         g.Dispose()
  15.         Me.BackgroundImage = h
  16.     End Sub
  17. End Class

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 4.333 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут