Построение диаграмм по выбору пользователя - VB
Формулировка задачи:
есть программа(во вложении), которая генерирует 1000 случайных чисел и на основе этих чисел рассчитывает частоту повторения каждой из цифры и строит гистограмму... нужно что бы она ещё строила точечную гистограмму и круговую диаграмму по выбору
то есть чтобы сгенерировала числа и пользователь выбрал какую диаграмму построить..
получиться должно примерно так как показано на рисунке(во вложении)
Решение задачи: «Построение диаграмм по выбору пользователя»
textual
Листинг программы
Private Sub Command1_Click() ' Main "Gist" Main "Circle" End Sub Sub Main(ByVal S As String) Dim Arr(1 To 1000) As Byte, i As Integer, sum As Single ' тут добавил сумму Dim nArr(10) As Integer, max As Integer, min As Integer Randomize List1.Clear Picture1.Cls For i = 1 To 1000 Arr(i) = Int(Rnd * 11) List1.AddItem Arr(i) nArr(Arr(i)) = nArr(Arr(i)) + 1 Next i min = 1000 For i = 0 To 10 If nArr(i) > max Then max = nArr(i) If nArr(i) < min Then min = nArr(i) sum = sum + nArr(i) Next i Select Case S Case "Gist" Picture1.Scale (0, max + 10)-(111, 0) For i = 0 To 10 Picture1.Line (10 * i + 1, 8)-(10 * i + 10, nArr(i)), RGB((nArr(i) - min) * 20, max - nArr(i), (nArr(i) - min) * 5), BF Picture1.CurrentX = Picture1.CurrentX - 8 Picture1.CurrentY = Picture1.CurrentY + 8 Picture1.Print nArr(i) Picture1.CurrentY = 8: Picture1.CurrentX = 10 * i + 4 Picture1.Print i Next i Case "Circle" ' тут само построение круговой диаграммы Dim a As Single, b As Single Picture1.Scale (-10, 10)-(10, -10) Picture1.FillStyle = vbFSSolid For i = 0 To 10 b = b + 6.28 * nArr(i) / sum Picture1.FillColor = QBColor(i) ' Мне эти цвета не понравились-> : RGB((nArr(i) - min) * 20, max - nArr(i), (nArr(i) - min) * 5) Picture1.Circle (0, 0), 5, , -a, -b a = a + 6.28 * nArr(i) / sum Next i End Select End Sub Private Sub Command2_Click() End End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д