Форум программистов, компьютерный форум, киберфорум
Visual Basic .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/15: Рейтинг темы: голосов - 15, средняя оценка - 4.67
42 / 1 / 0
Регистрация: 21.04.2020
Сообщений: 111

Работа с ListBox, условные операторы

22.01.2021, 05:58. Показов 2867. Ответов 4

Студворк — интернет-сервис помощи студентам
В коде работает только первое условие Elseif не работает где ошибка
VB.NET
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        TextBox10.Text = ""
        Dim Ntr, NatOtm, PrOtm, NzemR, Val_C As Double
        Ntr = 1000
        If ListBox1.SelectedItem = 57 Xor 168 Xor 273 Xor 355 Xor 457 Then
            Val_C = 255
        ElseIf ListBox1.SelectedItem = 114 Xor 219 Xor 323 Xor 406 Xor 508 Xor 610 Xor 812 Xor 1000 Xor 1200 Then
            Val_C = 200
        ElseIf ListBox1.SelectedItem = 711 Xor 812 Then
            Val_C = 250
        End If
        NzemR = Ntr - Val_C
        TextBox10.Text = NzemR
    End Sub
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
22.01.2021, 05:58
Ответы с готовыми решениями:

Условные операторы
Задание состоит из двух частей. Часть 1. Использование условного оператора IF. Часть 2. Использование оператора выбора Select Case. ...

Как правильно записать условные операторы
Скажите не понимаю почему редактор подсвечивает именно Else и End if If IsNumeric(TextBox1.Text) And ComboBox1.Text...

Условные операторы и свойство Enabled у кнопки
Народ помогите решить проблему, что-то я совсем запутался. If a = b Then ButAdd.Enabled = True If a <>...

4
3257 / 3275 / 556
Регистрация: 17.02.2019
Сообщений: 5,184
22.01.2021, 06:11
Aleks_36, не совсем понятно из куска кода. Попробуйте вместо XOR поставить OR
0
sleep
 Аватар для I can
4936 / 4618 / 841
Регистрация: 13.04.2015
Сообщений: 9,791
22.01.2021, 06:28
Лучший ответ Сообщение было отмечено Aleks_36 как решение

Решение

Цитата Сообщение от January29 Посмотреть сообщение
вместо XOR поставить OR
Это тоже не поможет по другим причинам. Имхо, надо сделать так
VB.NET
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
  Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
        TextBox10.Text = ""
        Dim Ntr, NatOtm, PrOtm, NzemR, Val_C As Double
        Ntr = 1000
        Select Case Val(ListBox1.SelectedItem)
            Case 57, 168, 273, 355, 457
                Val_C = 255
            Case 114, 219, 323, 406, 508, 610, 81, 1000, 1200
                Val_C = 200
            Case 711, 812
                Val_C = 250
        End Select
        NzemR = Ntr - Val_C
        TextBox10.Text = NzemR
    End Sub
2
42 / 1 / 0
Регистрация: 21.04.2020
Сообщений: 111
22.01.2021, 11:08  [ТС]
А почему не работает со вторым Listbox

VB.NET
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
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        Dim Ntr, NatOtm, PrOtm, NzemR, Val_C As Double
        Select Case Val(ListBox1.SelectedItem)
            Case 57, 168, 273, 355, 457
                Val_C = 0.255
            Case 114, 219, 323, 406, 508, 610, 812, 1000, 1200
                Val_C = 0.2
            Case 711, 900
                Val_C = 0.25
        End Select
        Dim K, KG, KZ, PR, D As String
 
        Select Case Val(ListBox2.SelectedItem)
            Case K
                NzemR = Ntr - Val_C - 0.35
            Case KG
                NzemR = Ntr - 0.6
            Case KZ
                If ListBox1.SelectedItem <= 200 Then
                    NzemR = Ntr - Val_C - 0.55
                Else
                    NzemR = Ntr - Val_C - 0.65
                End If
            'Case PR
            '    NzemR = Ntr - Val_C - 350 - 300
            Case D
                NzemR = Ntr - Val_C - 0.35
        End Select
 
        TextBox10.Text = NzemR
    End Sub
0
sleep
 Аватар для I can
4936 / 4618 / 841
Регистрация: 13.04.2015
Сообщений: 9,791
22.01.2021, 11:24
Цитата Сообщение от Aleks_36 Посмотреть сообщение
А почему не работает со вторым Listbox
Цитата Сообщение от Aleks_36 Посмотреть сообщение
VB.NET
1
2
3
Dim K, KG, KZ, PR, D As String
Select Case Val(ListBox2.SelectedItem)
 Case K
K - это у вас переменная, и её значение не определено, поэтому эти условия не выполнятся.

Добавлено через 13 минут
Мой экстрасенс говорит, что возможно должно быть так
VB.NET
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
       Select  ListBox2.SelectedItem 
            Case "K"
                NzemR = Ntr - Val_C - 0.35
            Case "KG"
                NzemR = Ntr - 0.6
            Case "KZ"
                If val(ListBox1.SelectedItem )<= 200 Then
                    NzemR = Ntr - Val_C - 0.55
                Else
                    NzemR = Ntr - Val_C - 0.65
                End If
            'Case "PR"
            '    NzemR = Ntr - Val_C - 350 - 300
            Case "D"
                NzemR = Ntr - Val_C - 0.35
        End Select
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
22.01.2021, 11:24
Помогаю со студенческими работами здесь

Условные операторы
double t, state; t = Convert.ToDouble(textBox1.Text); if (checkBox2.Checked == true) { ...

Условные операторы!
Дан номер года (положительное целое число). Определить количество дней в этом году, учитывая, что обычный год насчитывает 365 дней, а...

Условные операторы
Дано действительное число a. Вычислить f(a), если f(x)={{x}^{3}при x\leq 0; x при 0 &lt;x \leq 1; {x}^{2}- sinx в...

Условные операторы: определить, является ли произведение его цифр больше числа и кратна ли сумма его цифр трем
дано трёхзначное число. Определить, является ли произведение его цифр больше числа и кратна ли сумма его цифр трем. Заранее спасибо)

Условные операторы в делегате
Всем привет Пробую оптимизировать свой код Но как всегда... Кочу то, что у меня дублируется в case перенести в делегат ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru