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

Событийная процедура должна содержать только операторы вызова пользовательских процедур

15.06.2020, 18:46. Показов 1923. Ответов 20
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Обмен данными между процедурами должен осуществляться через параметры, без использования глобальных переменных.Событийная процедура должна содержать только операторы вызова пользовательских (общих) процедур.
Нужна ваша помощь
Миниатюры
Событийная процедура должна содержать только операторы вызова пользовательских процедур  
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
15.06.2020, 18:46
Ответы с готовыми решениями:

Программа, которая должна содержать минимум два пользовательских класса (или структуры)
Программа должна содержать минимум два пользовательских класса (или структуры). В классах не должно быть статических полей и методов. В...

Строка s2 должна содержать буквы только из множества букв 1-го слова 1-й строки
ввести строку s1 с помощью оператора readln. Определить ее реальную длину и 1-е слово. В строку s2 вводить информацию посимвольно с помощью...

Использование пользовательских процедур
Два треугольника заданы длинами сторон. Вычислить их площадь и сравнить их.

20
0 / 0 / 0
Регистрация: 02.12.2018
Сообщений: 27
15.06.2020, 18:54  [ТС]
Вот такой интерфейс
Миниатюры
Событийная процедура должна содержать только операторы вызова пользовательских процедур  
0
Любитель
 Аватар для Тим70
1039 / 746 / 160
Регистрация: 27.01.2019
Сообщений: 1,509
18.06.2020, 00:07
Лучший ответ Сообщение было отмечено Yezzje как решение

Решение

Yezzje, Как то так наверно
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
Imports System.Math
Public Class Form1
 
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim x As Double = Val(TextBox1.Text)
        Dim y As Double = Val(TextBox2.Text)
        Dim z As Double = Val(TextBox3.Text)
        Dim a As Double = Val(TextBox4.Text)
 
        If Pow(Abs(z), x * y) < 3 Then 'проверяем первое условие
            One(x, y, z) 'отправляем в первую процедуру
        ElseIf Pow(Abs(z), x + y) > 4 Then 'проверяем второе условие
            Two(x, y, z) 'отправляем во вторую процедуру
        ElseIf 3 <= Pow(Abs(z), x + y) And Pow(Abs(z), x + y) <= 4 Then 'проверяем третье условие
            Three(x, y, z, a) 'отправляем в третью процедуру
        Else 'если ни одно условие не выполняется
            MsgBox("Ни одно условие не выполнено")
        End If
 
    End Sub
 
    Sub One(ByVal x1 As Double, ByVal y1 As Double, ByVal z1 As Double)
        Dim r As Double
        r = Sqrt(Abs(x1) + Abs(y1) + Abs(z1))
        TextBox5.Text = r.ToString
        TextBox6.Text = "1 условие"
    End Sub
 
    Sub Two(ByVal x1 As Double, ByVal y1 As Double, ByVal z1 As Double)
        Dim r, arr(2), a0, a1, a2 As Double
        a0 = Sqrt(Abs(x1))
        a1 = Sqrt(Abs(y1))
        a2 = Sqrt(Abs(z1))
        'создаем массив чтобы найти минимум
        arr = {a0, a1, a2}
        r = arr.Min
        TextBox5.Text = r.ToString
        TextBox6.Text = "2 условие"
 
    End Sub
 
    Sub Three(ByVal x1 As Double, ByVal y1 As Double, ByVal z1 As Double, ByVal a1 As Double)
        Dim r As Double
        r = Max(x1, y1 ^ 3) + a1
        TextBox5.Text = r.ToString
        TextBox6.Text = "3 условие"
 
    End Sub
 
    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        End
    End Sub
End Class
Добавлено через 57 секунд
Все разделители точка.
1
0 / 0 / 0
Регистрация: 02.12.2018
Сообщений: 27
18.06.2020, 18:59  [ТС]
Огромное спасибо, а можете помочь составить схему алгоритма задачи?
0
Любитель
 Аватар для Тим70
1039 / 746 / 160
Регистрация: 27.01.2019
Сообщений: 1,509
18.06.2020, 20:05
Yezzje, Да все просто.в прямоугольнике ввод данных,от него ромб с первым условием,от ромба две стрелки если ДА,то прямоугольник с первой процедурой,если НЕТ идем ко второму ромбу со вторым условием и все повторяется.
0
Любитель
 Аватар для Тим70
1039 / 746 / 160
Регистрация: 27.01.2019
Сообщений: 1,509
18.06.2020, 20:22
ну как то так
Миниатюры
Событийная процедура должна содержать только операторы вызова пользовательских процедур  
0
0 / 0 / 0
Регистрация: 02.12.2018
Сообщений: 27
18.06.2020, 21:17  [ТС]
По типу этой
Миниатюры
Событийная процедура должна содержать только операторы вызова пользовательских процедур  
0
Любитель
 Аватар для Тим70
1039 / 746 / 160
Регистрация: 27.01.2019
Сообщений: 1,509
18.06.2020, 21:56
Yezzje, Я вам похожую и накидал.А условия и формулы для расчета есть в вашем задании.Впишите их в фигуры сами.

Добавлено через 1 минуту
И провести несколько линий к концу тоже не сложно
0
0 / 0 / 0
Регистрация: 02.12.2018
Сообщений: 27
18.06.2020, 21:58  [ТС]
понял,но что-то у меня не получается 3 условие выполнить, уже много перепробовал комбинаций, не подскажите какие данные вбить?
0
Любитель
 Аватар для Тим70
1039 / 746 / 160
Регистрация: 27.01.2019
Сообщений: 1,509
18.06.2020, 22:06
Yezzje, У меня тоже не вышло.1 условие перебивает.Возможно ошибка здесь |z[xy<3,если Х не умножать на Y а прибавлять ,то все должно получиться.Проверьте задание
0
Любитель
 Аватар для Тим70
1039 / 746 / 160
Регистрация: 27.01.2019
Сообщений: 1,509
19.06.2020, 15:50
Yezzje, Eсли 1 условие сделать так https://www.cyberforum.ru/cgi-bin/latex.cgi?{\mid Z\mid }^{x+y}<3 тогда получается
Изображения
 
0
0 / 0 / 0
Регистрация: 02.12.2018
Сообщений: 27
19.06.2020, 16:32  [ТС]
А можно исправить код,чтобы в нем не было min,max и библиотеки math,заменить это условными операторами без написания собственных функций (методов) нахождения MIN и MAX и их вызовов.
0
Любитель
 Аватар для Тим70
1039 / 746 / 160
Регистрация: 27.01.2019
Сообщений: 1,509
19.06.2020, 18:17
Yezzje, ну math по любому придется использовать! Но если не импортировать Math в начале,то надо будет перед всеми матиматическими функциями добавлять Math. Например Math.Abs(F)

Добавлено через 4 минуты
То есть вы хотите определить min и max сами. А зачем??? в VB.NET для этого есть функции

Добавлено через 23 минуты
Yezzje, Нарыл самое протое
VB.NET
1
2
3
4
5
6
7
8
Dim a(6) as Integer = {-3, 5, 2, 12, -6, 1, 17}
Dim i as Integer
Dim mx as Integer = 0
Dim mn as Integer = 0
For i = 0 To a.Length - 1
    If Math.Abs(a(i)) > mx Then mx = a(i)
    If Math.Abs(a(i)) < mn Then mn = a(i)
Next i
Добавлено через 3 минуты
Но опять же создается массив...и то же на то и выходит...
0
0 / 0 / 0
Регистрация: 02.12.2018
Сообщений: 27
19.06.2020, 18:30  [ТС]
Мне вот что написали:В работе запрещено использовать функции (методы) MIN и MAX, библиотеки Math. Работа подразумевает использование вложенных условных операторов без написания собственных функций (методов) нахождения MIN и MAX и их вызовов.

При нахождении МИН или МАХ из 3-х элементов достаточно 2-х сравнени
0
Любитель
 Аватар для Тим70
1039 / 746 / 160
Регистрация: 27.01.2019
Сообщений: 1,509
19.06.2020, 19:04
Yezzje, Без Math.ни одна математическая операция работать не будет.Будет выдаваться ошибка.А насчет минимума и максимума писал выше.
0
4708 / 3661 / 857
Регистрация: 02.02.2013
Сообщений: 3,518
Записей в блоге: 2
19.06.2020, 19:18
Тим70, устанавливать начальные значения лучше так (иначе можно просчитаться)
VB.NET
1
2
Dim mx As Integer = Integer.MinValue
Dim mn As Integer = Integer.MaxValue
0
0 / 0 / 0
Регистрация: 02.12.2018
Сообщений: 27
19.06.2020, 19:42  [ТС]
Значит просто min и max не использовать,заменить их
0
4708 / 3661 / 857
Регистрация: 02.02.2013
Сообщений: 3,518
Записей в блоге: 2
19.06.2020, 20:41
Вероятно, требуется так (Math.Sqrt оставил, хотя можно было и вычислить)
Кликните здесь для просмотра всего текста
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
36
Private Sub Solution_Click(sender As System.Object, e As System.EventArgs) Handles Solution.Click
    Dim x As Double = Val(TextBox1.Text)
    Dim y As Double = Val(TextBox2.Text)
    Dim z As Double = Val(TextBox3.Text)
    Dim a As Double = Val(TextBox4.Text)
    Dim xm As Double = x
    Dim ym As Double = y
    Dim zm As Double = z
    If x < 0 Then xm = -x
    If y < 0 Then ym = -y
    If z < 0 Then zm = -z
    Dim ff As Double = zm ^ (x + y)
    Dim value As Double
    Select Case ff
        Case Is < 3
            value = Math.Sqrt(xm + ym + zm)
        Case Is > 4
            Dim sqx As Double = Math.Sqrt(xm)
            Dim sqy As Double = Math.Sqrt(ym)
            Dim sqz As Double = Math.Sqrt(zm)
            If (sqx < sqy And sqx < sqz) Then
                value = sqx
            ElseIf (sqy < sqx And sqy < sqz) Then
                value = sqy
            ElseIf (sqz < sqx And sqz < sqy) Then
                value = sqz
            End If
        Case Else
            If x > y ^ 3 Then
                value = x + a
            Else
                value = y ^ 3 + a
            End If
    End Select
    TextBox5.Text = value.ToString
End Sub

PS. Этот процесс обучения напоминает рисование палочек в прописях (для тех кто еще помнит).

Добавлено через 10 минут
Math.Sqrt(xm) можно заменить так xm^0.5
2
Любитель
 Аватар для Тим70
1039 / 746 / 160
Регистрация: 27.01.2019
Сообщений: 1,509
20.06.2020, 22:30
ovva,
Цитата Сообщение от ovva Посмотреть сообщение
PS. Этот процесс обучения напоминает рисование палочек в прописях (для тех кто еще помнит).
прекрасно помню
0
0 / 0 / 0
Регистрация: 02.12.2018
Сообщений: 27
22.06.2020, 15:35  [ТС]
Спасибо,а код на номера условий?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
22.06.2020, 15:35
Помогаю со студенческими работами здесь

Использование пользовательских процедур
Два треугольника заданы длинами сторон. Вычислить их площадь и сравнить их.

Применение пользовательских процедур
В каждом из массивов P(7), T(8) вычислить сумму положительных и сумму отрицательных элементов. Повторяющуюся часть реализовать с помощью...

Перехват пользовательских функций (процедур)
Возможно перехватить API сообщение или функцию, а также любую другую ф-цию вызываемую из библиотеки. Но есть ли возможность перехватить...

написание пользовательских процедур на языке ассемблер
y = (x – 1)! + x помогите как написать на ассемблере

Разработать сервер вызова процедур
Разработать сервер вызова процедур по имени. Результат – повторно возвращается в ответ.


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru