Найти наибольшее отрицательное - VB
Формулировка задачи:
Вычислить и округлить до 0,1 элементы массива M={m(i)}
где m(i)=7sin(i+sink) и i= {1, 2,...7}
Найти наибольшее отрицательное sin|m(i)|
При k=0,66 M= {7,0; 3,5; -3,2; -7,0; -4,3; 2,3; 6,8}
Наибольшее = -0,058
У меня получается при к=0,66
7 3,5 -3,2 -7 -4,3 2,3 6,8
0,767
Почему получается 0,767? Что нужно изменить?
Листинг программы
- Private Sub Command1_Click()
- Dim i As Integer, m(8) As Single, k, t As Single
- Me.Cls
- k = Text1
- Print "ïðè k= "; k
- For i = 1 To 7
- m(i) = 7 * Sin(i + Sin(k))
- Print Round(m(i), 1) & vbTab;
- Next i
- For i = 1 To 6
- If Sin(Abs(m(i))) < 0 And Sin(Abs(m(i))) < Sin(Abs(m(i + 1))) Then
- t = Sin(Abs(m(i + 1)))
- Else
- t = Sin(Abs(m(i)))
- End If
- Next
- Print Round(t, 3)
- End Sub
Решение задачи: «Найти наибольшее отрицательное»
textual
Листинг программы
- Private Sub Command1_Click()
- Dim i As Integer, m(8) As Single, k, t As Single
- Me.Cls
- k = Text1
- Print "ïðè k= "; k
- For i = 1 To 7
- m(i) = 7 * Sin((i + Sin(k * 180 / 3.1416)) * 180 / 3.1416)
- Print Round(m(i), 1) & vbTab;
- Next i
- For i = 1 To 6
- If Sin(Abs(m(i) * 180 / 3.1416)) < 0 And Sin(Abs(m(i) * 180 / 3.1416)) < Sin(Abs(m(i + 1) * 180 / 3.1416)) Then
- t = Sin(Abs(m(i + 1) * 180 / 3.1416))
- Else
- t = Sin(Abs(m(i) * 180 / 3.1416))
- End If
- Next
- Print Round(t, 3)
- End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д