Форум программистов, компьютерный форум, киберфорум
Visual Basic .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.94/18: Рейтинг темы: голосов - 18, средняя оценка - 4.94
0 / 0 / 0
Регистрация: 26.04.2017
Сообщений: 10

Найти значения переменных, которые будут соответствовать условиям

26.04.2017, 15:54. Показов 3959. Ответов 27
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
безуспешно пробую решить простую задачу:
целые переменные s = 1 to 7, a = 1 to 5, b = 1 to 9
Нужно найти значения переменных, которые будут соответствовать условиям
a < s
b < s
s = a + b
последний код
VB.NET
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Sub Main()
        For s As Integer = 1 To 7
            For a As Integer = 1 To 5
                If a < s Then
                    a = a
                End If
                For b As Integer = 1 To 9
                    If b < s Then
                        b = b
                    End If
                    If s  = a + b Then
                        Console.Write("number is:", s, a, b)
                        Console.ReadLine()
                    End If
 
                Next
            Next
        Next
        Console.ReadLine()
    End Sub
физическое решение примерно следующее
s = 2 a = 1 b = 1
s = 3 a = 1 b = 2
a =2 b = 1
и т.д.


Пожалуйста подтолкните в нужном направлении
Спасибо
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
26.04.2017, 15:54
Ответы с готовыми решениями:

Укажите значения, которые будут содержаться в переменных после выполнения следующих программных фрагментов
Укажите значения которые будут содержаться в переменных после выполнения следующих программных фрагментов var s1,s2,s3:string; ...

Как найти нужные значения из ячеек, которые содержат разные данные, по нескольким условиям
Добрый день! Помогите, пожалуйста, два дня голову ломаю. Есть 5 столбцов с данными. Это либо конкретные даты (если дата уже наступила),...

найти значения переменных Х, У которые минимизируют функцию f(x,y) = -x-5y
y = asin(atan(0.4*x)) при x равном от -4 до 4 и найти значения переменных Х, У которые минимизируют функцию f(x,y) = -x-5y ...

27
0 / 0 / 0
Регистрация: 26.04.2017
Сообщений: 10
27.04.2017, 21:10  [ТС]
Студворк — интернет-сервис помощи студентам
Bidgo а как загрузить Вашу форму
0
117 / 110 / 31
Регистрация: 05.04.2014
Сообщений: 224
27.04.2017, 21:29
И все же, требовалось общее решение, а не несколько частных.
В моем решении достаточно изменить массивы в первых 2 строках, например:
VB.NET
1
2
    Public Am() As Integer = {12, 8, 15, 7, 1}
    Public A() As Integer = {16, 21, 24, 17, 25}
Добавлено через 2 минуты
Цитата Сообщение от tutodin Посмотреть сообщение
Bidgo а как загрузить Вашу форму
Создать проект Windows Forms, на форму кинуть кнопку и листбокс.
1
0 / 0 / 0
Регистрация: 26.04.2017
Сообщений: 10
27.04.2017, 22:27  [ТС]
Я понимаю что некоторые мои вопросы могут раздражать. Извините. Пожалуйста не сочтите за невежество, но не будете ли Вы, уважемый Bidgo, так любезны и подсказать как создать Windows Forms под Вашу прогу. Я бросил кнопку и лист но их ещё нужно как-то связать.
Не в качестве опрвдания своей беспомощности а информации ради.
Несколько лет назад англичане, я не помню кто конкретно (какой соц. проект) попробовали выяснить кого можно считать профессионалом. Результат оказался следующим. Профессионалом можно считать человека проведшего в филде 1000 (тысячу) часов. Информация точная но я не помню источник (возможно BBC)
Даже представить не могу сколько Вы провели (прожили) на этом поле.

Добавлено через 2 минуты
Моя жизнь на этом поле (даже не жизнь а просто наступил или вступил) несколько часов. Ещё раз не оправдываюсь, просто пытаюсь как-то сгладить раздражение, которое могу вызывать своими вопросами.
0
117 / 110 / 31
Регистрация: 05.04.2014
Сообщений: 224
27.04.2017, 23:33
Лучший ответ Сообщение было отмечено tutodin как решение

Решение

После создания проекта двойной клик по форме, откроется ее код.
Выделить весь текст между Public Class Form1 и End Class
Вместо этого текста вставить текст, предложенный мной.
Или, если у тебя консольное приложение, то наверное можно сделать так, как описано здесь (с консольными не работал)
1
18 / 9 / 4
Регистрация: 04.02.2015
Сообщений: 36
28.04.2017, 09:46
Еще вариант:
Создаем универсальный класс для обработки наборов
Кликните здесь для просмотра всего текста

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
32
33
34
35
Public Class polynom
    Dim aMax() As Integer
    Dim sMax, sMaxN_1 As Integer
    Dim aCurMax(), aTemp() As Integer
    'установить максимальные значения An
    Sub New(aMax() As Integer)
        Me.aMax = aMax.Clone
    End Sub
    'установить S
    Public Sub SetS(newS As Integer)
        sMax = newS
        sMaxN_1 = sMax * (aMax.Count - 1)
        aCurMax = aMax.Select(Function(a) Math.Min(a, sMax - 1)).ToArray
        aTemp = Enumerable.Repeat(0, aMax.Count).ToArray
    End Sub
    'Вычисление следующего набора, возврат ДА если есть такой набор, НЕТ если закончили перебор
    Public Function NextSet() As Boolean
        For i = 0 To aTemp.Count - 1
            If aTemp(i) < aCurMax(i) Then
                aTemp(i) += 1
                Return True
            End If
            aTemp(i) = 0
        Next
        Return False
    End Function
    'условие
    Public Function conditionOK() As Boolean
        Return aTemp.Sum = sMaxN_1
    End Function
    'вернуть набор в виде строки
    Public Function GetSet() As String
        Return Join(aTemp.Select(Function(a) a.ToString).ToArray)
    End Function
End Class


А теперь вызов:
VB.NET
1
2
3
4
5
6
7
8
9
10
11
12
13
14
        Dim p = New polynom({15, 15, 15, 15, 15})
        Dim n = 0
        For s = 0 To 17
            p.SetS(s)
            Do
                If p.conditionOK Then
                    n += 1
                    Console.WriteLine("SET # {0}: s:{1} set: {2}", n, s, p.GetSet)
                End If
            Loop While p.NextSet = True
        Next
        If n = 0 Then
            Console.WriteLine("НЕТ РЕШЕНИЙ")
        End If
Здесь, правда, нет минимальных значений An, но это можно добавить.

Добавлено через 2 минуты
Для двучлена:
VB.NET
1
Dim p = New polynom({10, 20})
Для трехчлена:
VB.NET
1
Dim p = New polynom({10, 20, 30})
ну и так далее до бесконечности
0
0 / 0 / 0
Регистрация: 26.04.2017
Сообщений: 10
28.04.2017, 11:44  [ТС]
всё получилось. а как увидеть счётчик (1093 решений)
0
117 / 110 / 31
Регистрация: 05.04.2014
Сообщений: 224
28.04.2017, 12:38
tutodin, если с листбоксом, то так:
VB.NET
1
        If ListBox1.Items.Count = 0 Then ListBox1.Items.Add("Решения нет") Else ListBox1.Items.Add("Всего вариантов: " & ListBox1.Items.Count)
В последней строке будет количество результатов
0
0 / 0 / 0
Регистрация: 26.04.2017
Сообщений: 10
28.04.2017, 15:35  [ТС]
спасибо получилось
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
28.04.2017, 15:35

Сколько существует различных наборов значений переменных, которые удовлетворяют условиям?
Сколько существует различных наборов значений логических переменных x1, x2, … x8, y1, y2, … y8, которые удовлетворяют всем перечисленным...

Сколько существует разных наборов значений логических переменных, которые удовлетворяют всем перечисленным ниже условиям
Сколько существует различных наборов значений логических переменных x1, x2, ... x8, которые удовлетворяют всем перечисленным ниже...

Какими будут значения переменных a и b после выполнения операторов
Решение задач 1. Дана последовательность операторов: a := 1; b := 1; while a + b &lt; 8 do Begin a :=a + 1; b := b + 2 End; s := a + b...

Определить, какими будут значения переменных p и d после выполнения операторов
1. Определить, какими будут значения переменных p и d после выполнения операторов. p:=true; d:=l; case k mod 10 of 3, 2,7, 5: d:=k; ...

Определите, какими будут значения переменных p и d после выполнения операторов
Определите, какими будут значения переменных p и d после выполнения операторов: p:=true; d:=1; k:=71; case k mod 10 of 3, 2, 7, 5:...


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

Или воспользуйтесь поиском по форуму:
28
Ответ Создать тему
Новые блоги и статьи
FPS контроллер с анимированными Y-Bot и 3D-звуком miniaudio (Box3D, Recast, BehaviorTree.CPP, ozz-animation, ImGui, OpenGL и SDL3)
8Observer8 18.10.2026
Содержание блога | English Version Полное мультиплатформенное руководство по стартовому проекту с FPS-контроллером игрока, анимированными роботами Y-Bot с 4-слойным блендингом, 3D-физикой Box3D,. . .
Локальный http сервер
Argus19 17.10.2026
Локальный http сервер На работе, на двух локальных компьютерах круглосуточно работают программы опроса приборов с записью в книги Excel,которые раз в сутки записываются на сервер компании. Т. к. . . .
Копировать Windows на новый диск на UEFI
damix 17.10.2026
https:/ / uriesk. wordpress. com/ 2016/ 11/ 01/ move-window-10-to-ssd-on-a-uefi-dualboot-system-with-basic-linux-tools/ TL DR Вставляем диск, а старый подключаем через переходник, грузимся с лайва. . .
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык. Возвращает он вот это: https:/ / i. **********/ vqBWLe2. png Нужную строчку в 3й колонке просто выдумал. . Это. . .
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor. Это. . .
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js. В помощники взял Яндекс-Алису. Было создано три зала на разные интересы. исторические и ретро сериал Хичкок. . .
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru