Задание №5.
Выбрать и обосновать метод решения задачи, написать алгоритм, написать программу на рабочем языке программирования и решить контрольный пример в соответствии с вариантом таблицы 3.
Таблица 3
Вариант |
Название программы |
Размер массива N матрицы (mxn) переменной X пункту 5 |
Номер задачи по пункту 6 |
17 |
Отсортировать массив по убыванию. |
20 |
65 |
Сортировка массива по убыванию.
Код программы.
Private Sub Command1_Click()
Dim A(19), B As Integer
Label1.Caption = ""
Randomize (Time)
For i = 0 To 19
A(i) = Int(Rnd() * 10)
Next i
For i = 0 To 19
Label1.Caption = Label1.Caption & A(i) & Space(3)
Next i
For j = 1 To 19
For i = 0 To 18
If A(i) < A(i + 1) Then
B = A(i)
A(i) = A(i + 1)
A(i + 1) = B
End If
Next i
Next j
Label2.Caption = ""
For i = 0 To 19
Label2.Caption = Label2.Caption & A(i) & Space(3)
Next i
End Sub
Задание №6.
Вычислить значение многочлена по формуле Горнера для:
X= 0, 25; 0, 5; 0, 75; 1; 1, 25.
Y=10, 5x8+1, 8x6+1, 4x5+x4-12x3-x2+1, 05x+0, 27
Построить график y=f(x). Пояснить метод решения задачи.
Dim x As Single
Dim y As Single
Dim x0 As Single
Private Sub Command1_Click()
If Option1.Value = True Then
Label3.Caption = "y = "
For x = 0.25 To 1.25 Step 0.25
Call Funct
If x = 1.25 Then
Label3.Caption = Label3.Caption + Str(y)
Else
Label3.Caption = Label3.Caption + Str(y) + "; "
End If
Next
ElseIf Option2.Value = True Then
Call Funct
Label3.Caption = "y = " + Str(y)
End If
End Sub
Private Sub Command2_Click()
Dim y1 As Single
Dim x1 As Single
Picture1.Line (3000, 100)-(3000, 4000) 'ось у
Picture1.Line (2950, 2250)-(3050, 2250) 'координаты
Picture1.Line (2950, 2500)-(3050, 2500) 'координаты
Picture1.Line (2950, 2750)-(3050, 2750) 'координаты
Picture1.Line (2950, 3000)-(3050, 3000) 'координаты
Picture1.Line (2950, 3250)-(3050, 3250) 'координаты
Picture1.Line (2950, 3500)-(3050, 3500) 'координаты
Picture1.Line (2950, 1750)-(3050, 1750) 'координаты
Picture1.Line (2950, 1500)-(3050, 1500) 'координаты
Picture1.Line (2950, 1250)-(3050, 1250) 'координаты
Picture1.Line (2950, 1000)-(3050, 1000) 'координаты
Picture1.Line (2950, 750)-(3050, 750) 'координаты
Picture1.Line (2950, 500)-(3050, 500) 'координаты
Picture1.Line (2950, 250)-(3050, 250) 'координаты
Picture1.Line (200, 2000)-(7000, 2000) 'ось x
Picture1.Line (3750, 2050)-(3750, 1950) 'координаты
Picture1.Line (3500, 2050)-(3500, 1950) 'координаты
Picture1.Line (3250, 2050)-(3250, 1950) 'координаты
Picture1.Line (2750, 2050)-(2750, 1950) 'координаты
Picture1.Line (2500, 2050)-(2500, 1950) 'координаты
Picture1.Line (2250, 2050)-(2250, 1950) 'координаты
Picture1.Line (6900, 2050)-(7000, 2000) 'стрелка по оХ
Picture1.Line (6900, 1950)-(7000, 2000) 'стрелка по оХ
Picture1.Line (3000, 100)-(3050, 200) 'стрелка по оУ
Picture1.Line (3000, 100)-(2950, 200) 'стрелка по оУ
Picture1.Line (2800, 100)-(2850, 150) 'у
Picture1.Line (2830, 200)-(2880, 90) 'у
Picture1.Line (6930, 2100)-(7000, 2240) 'Х
Picture1.Line (6930, 2240)-(7000, 2100) 'Х
Picture1.Circle (2900, 2100), 50, , , , 1.7 '0
x1 = 0
y1 = 100000
For x = -2 To 2 Step 0.01
Call Funct
Picture1.Line (x1 * 500 + 3000, 2000 - y1 * 500)-(x * 500 + 3000, 2000 - y * 500), &HFF&
x1 = x
y1 = y
Next x
End Sub
Private Sub Command3_Click()
x = x0
Call Funct
Picture1.Circle (x * 500 + 3000, 2000 - y * 500), 50, &HFF0000
End Sub
Private Sub Option2_Click()
Option2.Caption = "x = "
x = InputBox("Введите значение х:", "Значение х")
Option2.Caption = "x = " + Str(x)
x0 = x
End Sub
Sub Funct()
y = 10.5 * x ^ 8 + 1.8 * x ^ 6 + 1.4 * x ^ 5 + x ^ 4 - 12 * x ^ 3 - x ^ 2 + 1.05 * x + 0.27
End Sub
Компьютерная арифметика.