powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / VB6 FUNCTION
23 сообщений из 23, страница 1 из 1
VB6 FUNCTION
    #38953024
Здравствуйте уважаемые!
Нужна помощь, незнаю как это сделать.
_Исходные данные: А, В, С . контроль ввода. А, В, С вводить в цикле пока А=0 и пока корень <=0. результаты X1, X2 .

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
Dim A%, B%, C%
Private Sub cmdExit_Click()
    If MsgBox("Выйти?", 36, "") = 6 Then End
End Sub
Private Sub cmdRaschet_Click()
Dim X1%, X2%
    Text1.Visible = True
    Text2.Visible = True
    X1 = (-B + Sqr((B ^ 2) - 4 * A * C)) / (2 * A)
    X2 = (-B - Sqr((B ^ 2) - 4 * A * C)) / (2 * A)
    Text1.Text = X1
    Text2.Text = X2
    cmdRaschet.Enabled = False
End Sub
Private Sub cmdVod_Click()
    Text1.Text = ""
    Text2.Text = ""
    Text1.Visible = False
    Text2.Visible = False
    Image1.Visible = False
    Image2.Visible = False
    A = CInt(InputBox("Введите значение А", "Исходные данные"))
    B = CInt(InputBox("Введите значение В", "Исходные данные"))
    C = CInt(InputBox("Введите значение С", "Исходные данные"))
    Image1.Visible = True
    Image2.Visible = True
    cmdRaschet.Enabled = True
End Sub
Function F%(k%)
    F = (-B + [color=red]k[/color] * Sqr((B ^ 2) - 4 * A * C))) / (2 * A)
End Function


k- -1,1
k-сказали умножать для смены знака с плюса на минус.
Большое вам спасибо!
...
Рейтинг: 0 / 0
VB6 FUNCTION
    #38953026
...
Рейтинг: 0 / 0
VB6 FUNCTION
    #38953240
Slava_Psk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Для случая вещественных коэффициентов кв. уравнения.
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
Dim A As Variant, B As Variant, C As Variant, X1 As Variant, X2 As Variant, D As Variant
Private Sub cmdExit_Click()
    If MsgBox("Выйти?", 36, "") = 6 Then End
End Sub

Private Sub cmdRaschet_Click()
On Error GoTo m1
Do
    A = InputBox("Введите значение А", "Исходные данные")
    B = InputBox("Введите значение В", "Исходные данные")
    C = InputBox("Введите значение С", "Исходные данные")
        D = B ^ 2 - 4 * A * C
    If D <= 0 Then
    MsgBox "Дискриминант меньше нуля"
    GoTo m2
    End If
    If A = 0 Then
    MsgBox "A=0"
    GoTo m2
    End If
    X1 = (-B + Sqr(D)) / (2 * A)
    X2 = (-B - Sqr(D)) / (2 * A)
    Text1.Text = X1
    Text2.Text = X2
m2:
    If MsgBox("Закончить расчет?", 36, "") = 6 Then Exit Sub
    Text1.Text = ""
    Text2.Text = ""
Loop
m1:
End Sub
...
Рейтинг: 0 / 0
VB6 FUNCTION
    #38953378
капитанская дочка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Slava_Psk,

goto зло
а в чем вопрос то собственно?
...
Рейтинг: 0 / 0
VB6 FUNCTION
    #38953523
Slava_Psk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
капитанская дочкаSlava_Psk,

goto зло
а в чем вопрос то собственно?

Да? А вот программисты Microsoft так не считают.
...
Рейтинг: 0 / 0
VB6 FUNCTION
    #38953545
капитанская дочка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Slava_Pskкапитанская дочкаSlava_Psk,

goto зло
а в чем вопрос то собственно?

Да? А вот программисты Microsoft так не считают.

да ну!?!? у них и программисты то не рабоют. давай лучше пруфлинк. срач на эту тему только в радость

пс: ежели ты столько знаешь то занахрена тебе попощь нужна
...
Рейтинг: 0 / 0
VB6 FUNCTION
    #38953551
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
капитанская дочкапс: ежели ты столько знаешь то занахрена тебе попощь нужнаон не ТС ))
...
Рейтинг: 0 / 0
VB6 FUNCTION
    #38953585
капитанская дочка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Proкапитанская дочкапс: ежели ты столько знаешь то занахрена тебе попощь нужнаон не ТС ))

вот ёпрст! точно
...
Рейтинг: 0 / 0
VB6 FUNCTION
    #38953586
Slava_Psk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
капитанская дочкаSlava_Pskпропущено...


Да? А вот программисты Microsoft так не считают.

да ну!?!? у них и программисты то не рабоют. давай лучше пруфлинк. срач на эту тему только в радость

пс: ежели ты столько знаешь то занахрена тебе попощь нужна

Есть такое понятие, как грамотность письма.
...
Рейтинг: 0 / 0
VB6 FUNCTION
    #38953604
Фотография The_Prist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
капитанская дочкаgoto злоНу не всегда... И соглашусь и нет. Кто-то считает, что это нечто вроде архаизма - остаток от первых версий. И, наверное, прав.
Я стараюсь не использовать данный оператор (к тому же составление программы без него неплохо развивает логику программную :-)). Но иногда он помогает.
Например, его брат: On Error GoTo. Очень полезен для отлова ошибок на ПК клиентов.
Да и сам GoTo при грамотном использовании не вреден. Он категорически не рекомендуется внутри циклов.
Например, приведенный код не нуждается во второй метке:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
Dim s As string,bEx as Boolean
Do
    bEx = False
    A = InputBox("Введите значение А", "Исходные данные")
    B = InputBox("Введите значение В", "Исходные данные")
    C = InputBox("Введите значение С", "Исходные данные")
    D = B ^ 2 - 4 * A * C
    If D <= 0 Then 
        s = "Дискриминант меньше нуля. ":bEx = True
    End If
    If A = 0 Then
        s = "A=0. ":bEx = True
    End If
    If bEx Then
        If MsgBox(s & "Закончить расчет?", 36, "") = 6 Then Exit Sub
        Text1.Text = ""
        Text2.Text = ""
    Else
        X1 = (-B + Sqr(D)) / (2 * A)
        X2 = (-B - Sqr(D)) / (2 * A)
        Text1.Text = X1
        Text2.Text = X2
    End if
Loop



Так что по факту нет ошибки, но с ним читабельности кода может значительно снизится, т.к. логика перескакивает с одного участка кода на другой, а в циклах это особенно запутывает.

Это мое личное мнение.
...
Рейтинг: 0 / 0
VB6 FUNCTION
    #38953619
капитанская дочка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
The_Prist,

+100500
...
Рейтинг: 0 / 0
VB6 FUNCTION
    #38953626
капитанская дочка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Slava_Pskкапитанская дочкапропущено...


да ну!?!? у них и программисты то не рабоют. давай лучше пруфлинк. срач на эту тему только в радость

пс: ежели ты столько знаешь то занахрена тебе попощь нужна

Есть такое понятие, как грамотность письма.

да ты не увиливай. давай своих программистов. я думаю тут всем будет любопытно почитать
...
Рейтинг: 0 / 0
VB6 FUNCTION
    #38953628
Slava_Psk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
The_Prist, приведенный вами пример по алгоритму отличается, нет диагностики по некорректным данным.
Если бы goto было таким злом и анахронизмом его бы дано убрали из языка.
...
Рейтинг: 0 / 0
VB6 FUNCTION
    #38953639
Slava_Psk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
The_Prist,

Извиняюсь, не рассмотрел, что есть и диагностика.
...
Рейтинг: 0 / 0
VB6 FUNCTION
    #38953691
uux
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
uux
Гость
капитанская дочкаSlava_Pskпропущено...


Есть такое понятие, как грамотность письма.

да ты не увиливай. давай своих программистов. я думаю тут всем будет любопытно почитать

По поводу майкрософтовских программистов: если в любом приложении MS Office процедуры (точнее, методы контролов), создаваемые при помощи мастера, содержат по парочке goto, это ж, наверно, показатель, нет? :)

А вообще данная тема достаточно полно обсуждена здесь .
...
Рейтинг: 0 / 0
VB6 FUNCTION
    #38953715
капитанская дочка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Slava_PskThe_Prist, приведенный вами пример по алгоритму отличается, нет диагностики по некорректным данным.
Если бы goto было таким злом и анахронизмом его бы дано убрали из языка.

ага я прямо вижу как мелкомягкие заявляют что goto отменяется и все компиляторы начиная с х.х будут ругаться не говоря уже о том что вб6 сам по себе анахренизм. вот откровенно ты оправдываешься ссылаешься на каких то там программистов и ищешь до чего бы до***аться только не признать легко и просто что твой код с goto макаронный и точка. а будет там еще пара goto вместо if так вообще суп с лапшой. если уж на то пошло то беда не в самой goto а в тех кто пишет говнокод и учит других как оно правильно. that's being said!
...
Рейтинг: 0 / 0
VB6 FUNCTION
    #38953718
Slava_Psk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
uux,
Все правильно. Во всем должна быть золотая середина.
...
Рейтинг: 0 / 0
VB6 FUNCTION
    #38953726
Slava_Psk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
капитанская дочка,
Пустой спор и разговор, напоминает спор Остроконечников с Тупоконечниками.
...
Рейтинг: 0 / 0
VB6 FUNCTION
    #38953742
капитанская дочка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
uuxкапитанская дочкапропущено...


да ты не увиливай. давай своих программистов. я думаю тут всем будет любопытно почитать

По поводу майкрософтовских программистов: если в любом приложении MS Office процедуры (точнее, методы контролов), создаваемые при помощи мастера, содержат по парочке goto, это ж, наверно, показатель, нет? :)

А вообще данная тема достаточно полно обсуждена здесь .

ты сам-то ссылку открывал?
и да это показатель того что генерировать код на лету не так просто тебе кажется
а вот что мелкомягкие на самом деле думают : " GoTo statements can make code difficult to read and maintain. Whenever possible , use a control structure instead. For more information, see Control Flow in Visual Basic."
...
Рейтинг: 0 / 0
VB6 FUNCTION
    #38953745
капитанская дочка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Slava_Pskкапитанская дочка,
Пустой спор и разговор, напоминает спор Остроконечников с Тупоконечниками.

он пустой только потому что ты брякнул а теперь кусты ищешь
...
Рейтинг: 0 / 0
VB6 FUNCTION
    #38953781
uux
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
uux
Гость
капитанская дочкаты сам-то ссылку открывал?

Да.

капитанская дочкаи да это показатель того что генерировать код на лету не так просто тебе кажется

Я многого не знаю, конечно, но в принципе сделать обработчик ошибок не через Goto, а с помощью On Error Resume Next и т. д. в простейшей процедурке, пусть и генерируемой автоматически, едва ли составляет большую проблему.

Другое дело, что у майкрософтовских могли остаться наработки по мастерам с лохматых времен и сейчас они бы и рады их переписать, да руки не доходят.

капитанская дочкаа вот что мелкомягкие на самом деле думают : " GoTo statements can make code difficult to read and maintain. Whenever possible , use a control structure instead. For more information, see Control Flow in Visual Basic."

Так это они для лохов пишут. Так же, как Страдивари для лохов скрипки делал, а для реальных пацанов - барабаны.

А если серьезно - вот с этим твоим утверждением

капитанская дочкабеда не в самой goto а в тех кто пишет говнокод и учит других как оно правильно.

в принципе соглашусь, но оно не вполне соответствует твоему первоначальному

капитанская дочкаgoto зло
...
Рейтинг: 0 / 0
VB6 FUNCTION
    #38953801
Казанский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
капитанская дочкаgoto зло
а в чем вопрос то собственно?Долго втыкал в код, искал метку "зло"
...
Рейтинг: 0 / 0
VB6 FUNCTION
    #38954171
капитанская дочка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Казанскийкапитанская дочкаgoto зло
а в чем вопрос то собственно?Долго втыкал в код, искал метку "зло"


Зачет!
...
Рейтинг: 0 / 0
23 сообщений из 23, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / VB6 FUNCTION
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]