Member 14985048 Ответов: 4

Vb.net ошибка отладки из-за ошибок сборки.


Как я могу исправить свой код в VB.net, я предполагаю использовать 2 переключателя для вычисления длины кривой вертикальной кривой провеса и вертикальной кривой гребня. Я установил свою переменную A (Algerbraric grade difference) и V(design speed) как "Single", потому что это входные данные пользователя. S-это заданное уравнение для разности зрения, которое необходимо для вычисления "L" (длины кривой).
Я пытался понять, почему моя отладка не работает.
По-видимому, там есть ошибки сборки, и я не могу их понять. возможно, мне чего-то не хватает внутри кнопки 1.click? Буду рад любой обратной связи, которую я могу получить, пожалуйста!

Что я уже пробовал:

Public Class Form1

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        Dim A, V As Single
        Dim S, L As Double


        A = A_val.Text
        V = V_val.Text

        S = 3.675 * V + 0.096 * (V) ^ 2
        L_val.Text = Val(L)
    End Sub

    Private Sub RadioButton1_CheckedChanged(sender As Object, e As EventArgs) Handles RB_L.CheckedChanged
        Dim A, V As Single
        Dim chk, L As Double

        chk = 3.675 * V + 0.096 * (V) ^ 2
        
        If chk < L Then
        L = (A * (chk ^ 2)) / 1329
        End If

        If chk > L Then
            L = 2 * chk - (1329 / A)
        End If

        L_val.Text = Val(L)

    End Sub

    Private Sub RB_L1_CheckedChanged(sender As Object, e As EventArgs) Handles RB_L1.CheckedChanged
        Dim A, V As Single
        Dim chk, L As Double


        chk = 3.675 * V + 0.096 * (V) ^ 2

        If chk < L Then
        L = (A * chk ^ 2) / (400 + 3.5 * chk)
        If chk > L Then
            L = (2 * chk - (400 + 3.5 * chk) / A)
        End If

        L_val.Text = Val(L)

    End Sub


    Private Sub Clr_Click(sender As Object, e As EventArgs) Handles Clr.Click
        A_val.Text = ""
        V_val.Text = ""
        L_val.Text = ""
    End Sub
End Class

4 Ответов

Рейтинг:
1

RickZeeland

Вы забыли следующие строки в последних двух подлодках:

A = A_val.Text
V = V_val.Text


Рейтинг:
1

Member 14985048

Когда вы добавляете A = A_val.Текст и V = V_val.Текст в переключатели, VB.net говорит, что это не нужно с белым пунктирным подчеркиванием. @RickZeeland


CHill60

Если вы хотите ответить на сообщение, используйте ссылку "задать вопрос или комментарий" рядом с ним. Прекратите публиковать комментарии в качестве решений - плакат не будет уведомлен о вашем ответе

Рейтинг:
0

OriginalGriff

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

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

Начните с просмотра панели "ошибки" и внимательно прочитайте первую, затем дважды щелкните по ней - это приведет вас к строке, на которой была обнаружена проблема. Сообщение, которое вы прочитаете, будет описывать проблему и, как правило, довольно точно и полезно. Вероятно, он жалуется на эту линию (среди прочих):

If chk L Then
Что в значительной степени бессмысленно: "chk L" - это вообще не условие; оно не может быть "решено" до ответа "да или нет". Вы имели в виду "является ли chk таким же, как L"?, или "является ли chk больше, чем L?", или что - мы понятия не имеем, и - если быть жестоко честным - из остальной части кода это не похоже на то, что Вы тоже делаете!

Сделайте себе одолжение и начните снова: внимательно прочитайте свой вопрос о домашнем задании и подумайте о том, что он хочет, чтобы вы сделали, прежде чем попробовать его вручную на бумаге. Затем начните работать над тем, что вам нужно сделать, я приказываю перенести это на компьютер - просто прыгать прямо в код-это большая ошибка и потратит на целую нагрузку больше времени, чем вы сэкономите!

Если у вас вообще возникли проблемы с началом работы, то это может помочь: Как написать код для решения проблемы, руководство для начинающих[^]


Рейтинг:
0

Member 14985048

Спасибо вам @OrigincalGriff! Я не заметил, что когда я копировал и вставлял код, chk > L отсутствовал. Я думаю, что формат в этом браузере не позволяет мне вставить этот "меньше, чем знак". Подсказка этого проекта заключается в том, что нам просто нужно, чтобы пользователь ввел 2 переменные, и программа должна вычислить длину кривой в зависимости от того, какой переключатель они выберут. (Ниже приведена подсказка для проекта, и переменная K здесь не имеет отношения к коду, о котором мне сообщили)
https://learn-us-east-1-prod-fleet01-xythos.s3.amazonaws.com/5eb1a317e2761/8424399?response-cache-control=private%2C%20max-age%3D21600&response-content-disposition=inline%3B%20filename%2A%3DUTF-8%27%27Project%25201.pdf&response-content-type=application%2Fpdf&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20201105T180000Z&X-Amz-SignedHeaders=host&X-Amz-Expires=21600&X-Amz-Credential=AKIAZH6WM4PL5SJBSTP6%2F20201105%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Signature=4bb4e9b1e572e83a973d1f5f714672a93eb81a30aed9c28fd11c1d85a87753ad