Другие языки программирования и технологии

Напишите код для visual basic 6 чтоб калькулятор работал в режим deg и rad ли напишите эту функцию

Вообще-то тебе нужно на какой-то сайт программистов на VB. Я не программист, но некогда каклькулятор (матерясь) удобный для себя писал. Работает до сих пор. У меня там двухпозиционный переглючатель градусы - радианы (два круглых "окошка" из которых включенным может быть только один) . Кусок кода для нахождения синусов - тангенсов даю. может поможет тебе. Честно говорю с точки зрения программистов сделано грязно. Но работает. Верхняя часть ищет синусы и прочее при включенных градусах (по умолчанию) нижняя при переключении на радианы. Сам радианами не польззуюсь, да и вообще триг. функциями очень редко. Так что трижды проверь. Например результаты по вычислениям другого калькулятора.
Красивая очепятка получилась - перглючатель. Переключатель ессно.

Case Chr$(188) ' Sinus
If RadDeg(0).Value Then
Call CheckInput
R(1) = Sin(R(1))
Else
Call CheckInput
R(7) = R(1) * Atn(1) / 45
R(1) = Sin(R(7))
End If
Label.Caption = "sin"

Case Chr$(189) ' Arcsinus
If RadDeg(0).Value Then
Call CheckInput
R(1) = Atn(R(1) / Sqr(-(R(1)) * (R(1)) + 1))
Else
Call CheckInput
R(1) = (Atn(R(1) / Sqr(-(R(1)) * (R(1)) + 1))) * 45 / Atn(1)
End If
Label.Caption = "arcsin"

Case Chr$(190) ' Cosinus
If RadDeg(0).Value Then
Call CheckInput
R(1) = Cos(R(1))
Else
Call CheckInput
R(7) = R(1) * (4 * Atn(1)) / 180
R(1) = Cos(R(7))
End If
Label.Caption = "cos"

Case Chr$(191) ' Arccosinus
If RadDeg(0).Value Then
Call CheckInput
R(1) = Atn(-R(1) / Sqr(-(R(1)) * (R(1)) + 1)) + (2 * Atn(1))
Else
Call CheckInput
R(1) = (Atn(-R(1) / Sqr(-(R(1)) * (R(1)) + 1)) + (2 * Atn(1))) * 45 / Atn(1)

End If
Label.Caption = "arccos"

Case Chr$(192) ' Tangens
If RadDeg(0).Value Then
Call CheckInput
R(1) = Tan(R(1))
Else
Call CheckInput
R(7) = R(1) * (4 * Atn(1)) / 180
R(1) = Tan(R(7))
End If
Label.Caption = "tan"

Case Chr$(193) ' Arctangens
If RadDeg(0).Value Then
Call CheckInput
R(1) = Atn(R(1))
Else
Call CheckInput
R(1) = Atn(R(1)) * 45 / Atn(1)
End If
Label.Caption = "arctan"
ОА
Олег Альяных
12 231
Лучший ответ
Какой ИМЕННО калькулятор?
Который вы сами написали или стандартный в Win? (это немножко разные вещи)

Если сами, то просто переведите rad = deg * 0.017453292519943295769236907684886

Если стандартный, то используйте API (поиск hDC окна и посылка ему кода клавиши F2/F3 = 113/114)