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

Непростой калькулятор

19.10.2019, 19:35. Показов 5535. Ответов 32
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте,подскажите мне пожалуйста,нужно сделать калькулятор,но не простой,нужно например , найти S,для этого Кзаполн разделить на w22 и вывести его на большое окно,подскажите с чего начать?как начать писать программу?
Миниатюры
Непростой калькулятор   Непростой калькулятор  
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
19.10.2019, 19:35
Ответы с готовыми решениями:

Непростой поиск пустых ячеек excel с последующим заполнением
Здравствуйте! Прошу помочь со следующей проблемкой: Есть форма (vb.net, 2010 студия) с кнопкой. По нажатию из бд access берется...

Непростой препроцессор
#define el_resolveVALength(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, N, ...) N #define ELPP_VARIADIC_FUNC_MSVC(variadicFunction,...

Непростой отчет
Есть таблица, улица, дом, фамилия, требуется создать отчет в котором по каждой улице было: сколько человек живет в каждом доме и фамилия...

32
0 / 0 / 0
Регистрация: 19.10.2019
Сообщений: 12
19.10.2019, 20:25  [ТС]
Здравствуйте,подскажите мне пожалуйста,нужно сделать калькулятор,но не простой,нужно например , найти S,для этого Кзаполн разделить на w22 и вывести его на большое окно результат по кнопке и так для каждого значения, то есть например ,у меня TextBox1.text это S,а TextBox2.Text это К заполн ,а TextBox3.Text это w22,подскажите с чего начать?как начать писать программу?Значения пока написала в TextBox чтобы видеть,
Миниатюры
Непростой калькулятор  
0
 Аватар для Narimanych
2751 / 1725 / 779
Регистрация: 23.03.2015
Сообщений: 5,449
19.10.2019, 20:42
Evgenia2707,

Цитата Сообщение от Evgenia2707 Посмотреть сообщение
,подскажите мне пожалуйста,нужно сделать калькулятор

Подсказываю...
1) Нужно знать список данныых параметров
2) Нужно знать формулы зависимости выходных параметров от входных...
3) попробовать сделать зто САМОЙ в экселе ( или где-то еще)….

Как- то так....
0
Лень — мое второе и
 Аватар для Orlangur
3228 / 2416 / 687
Регистрация: 28.11.2014
Сообщений: 3,601
Записей в блоге: 3
19.10.2019, 20:47
Evgenia2707, Что именно непонятно? Задавайте конкретные вопросы
0
2285 / 1601 / 400
Регистрация: 26.06.2017
Сообщений: 4,743
Записей в блоге: 1
19.10.2019, 20:51
Ужас какой! Надеюсь это учебное задание.
1. Я бы порекомендовал использовать не TexBox-ы, а NumericUpDown контролы.
2. Вычисления можно делать так TextBox1.Value = TextBox2.Value / TextBox3.Value.
3. Вывод результатов у Вас в какой контрол производится?
0
266 / 217 / 54
Регистрация: 01.08.2016
Сообщений: 836
19.10.2019, 21:34
Лучший ответ Сообщение было отмечено Evgenia2707 как решение

Решение

Evgenia2707, насколько я понимаю вы собираетесь сделать калькулятор для расчета параметров трансформатора. Тема электротехники мне очень близка я готов оказать полную помощь в создании данного приложения.
Сомневаюсь что вы можете обойтись одной кнопкой, хотя если ввести все данные для расчета сразу то в принципе это возможно. Для написания приложений по таким расчетам лучше создавать классы в которых собственно и будут производится расчеты. Приложения с классами проще редактировать как я считаю и меньше кода в классе формы что делает его более читабельным. Вот код с классом по вычислению параметра S.
Класс формы:
VB.NET
1
2
3
4
5
6
7
8
9
Public Class Form1
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        Dim Strra1 As New Strra With {
            .kzap1 = CDbl(TextBox2.Text),
            .iw1 = CDbl(TextBox3.Text)
        }
        TextBox1.Text = Strra1.S1
    End Sub
End Class
Код класса
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
Public Class Strra
    Private kzap As Double
    Private iw As Double
    Public Property kzap1 As Double
        Get
            Return kzap = kzap1
        End Get
        Set(value As Double)
            kzap = value
        End Set
    End Property
    Public Property iw1 As Double
        Get
            Return iw = iw1
        End Get
        Set(value As Double)
            iw = value
        End Set
    End Property
    Public Function S1() As Double
        Return kzap / iw
    End Function
End Class
Можно записать и так.
2
2285 / 1601 / 400
Регистрация: 26.06.2017
Сообщений: 4,743
Записей в блоге: 1
19.10.2019, 21:39
Упс, выдал желаемое за реальное
TextBox1.Value замена на TextBox1.Text
0
266 / 217 / 54
Регистрация: 01.08.2016
Сообщений: 836
19.10.2019, 21:56
Narimanych,
Цитата Сообщение от Narimanych Посмотреть сообщение
3) попробовать сделать зто САМОЙ в экселе ( или где-то еще)….
Наверное задание стоит написать на vb net или желание есть сделать нормальное приложение. Конечно эксель сильная вещь можно сделать различные вещи для помощи в расчетах.
0
2285 / 1601 / 400
Регистрация: 26.06.2017
Сообщений: 4,743
Записей в блоге: 1
19.10.2019, 22:02
Evgenia2707, может быть я покажусь занудой, но параметры имеющие нечто общее лучше помещать в GroupBox (так, как у Вас размещены исходные данные). Так интерфейс будет наглядней. Затем необходимо выстроить зависимости параметров, т.е. если какой то параметр не задан или не вычислен, то необходимо управлять отображением результирующих данных. И напоследок, для тех параметров, которые только вычисляются и не могут быть использованы как исходные данные, необходимо запретить ввод, например установив параметр TextBox.Enabled = False.
Полностью поддерживаю andrsh, используя классы Вы сможете использовать всю мощь ООП.
0
266 / 217 / 54
Регистрация: 01.08.2016
Сообщений: 836
19.10.2019, 22:21
Uswer, Я думаю Evgenia2707 сначала наверное нужно как следует продумать над тем, что должно получится в итоге и как это должно выглядеть. Насчет тех данных которые получаются при вычислении и выводятся в TextBox конечно надо сделать так: TextBox1.ReadOnly=True, чтобы случайно не испортить результаты вычислений. Переделывать совсем не очень радостное занятие. Хотя есть пословица: Аппетит приходит во время еды. Сначала думаешь сделать так а потом приходит в голову свежая идея и в корне все меняешь, это когда нет изначального четкого задания.
0
0 / 0 / 0
Регистрация: 19.10.2019
Сообщений: 12
19.10.2019, 22:44  [ТС]
Огромное спасибо Вам попробую по Вашему совету сделать)))а то не знала с чего начинать),да именно так мне нужен калькулятор для расчета параметров трансформатора ,в экселе все значения есть все есть))
0
 Аватар для Narimanych
2751 / 1725 / 779
Регистрация: 23.03.2015
Сообщений: 5,449
20.10.2019, 00:18
andrsh,
Цитата Сообщение от andrsh Посмотреть сообщение
Наверное задание стоит написать на vb net
1) Тема была помещена в раздел VBA
2) Такую форму можно создать и в VBA ( в частности в эксель)
3) Можно записывать/выводить данные из ячеек листа эксель в текст боксы и т.д
4) В тех же ячейках прописать формулы для расчета данных...Отпадет надобность кодинга всех формул и есть возможность редактирования (изменения ) формулы при необходимости " не отходя от кассы"
5) Возможность сохранения данных в самом экселе...Не знаю как VB Net - наверное придется создать какой-нить внешний ресурс для хранения данных ( прошу просветить...)

Исходя из этих целей и предлагал эксель...Если что не так- прошу понять и простить...
0
0 / 0 / 0
Регистрация: 19.10.2019
Сообщений: 12
08.01.2020, 19:31  [ТС]
Здравствуйте,подскажите пожалуйста как исправить такую ошибку?
Миниатюры
Непростой калькулятор  
0
2285 / 1601 / 400
Регистрация: 26.06.2017
Сообщений: 4,743
Записей в блоге: 1
08.01.2020, 20:12
Цитата Сообщение от Evgenia2707 Посмотреть сообщение
как исправить такую ошибку?
Как, как, применить NumericUpDown, а не TextBox.
0
266 / 217 / 54
Регистрация: 01.08.2016
Сообщений: 836
08.01.2020, 20:30
Лучший ответ Сообщение было отмечено Evgenia2707 как решение

Решение

Evgenia2707, Скорее всего данная ошибка возникает из за того, что в качестве разделителя в числе применяется точка. Чтобы уйти от такой ошибки то можно записать так
VB.NET
1
.iw1 = CDbl(Replace(TextBox15.Text, ".", ","))
Тогда без разницы что будет в качестве разделителя точка или запятая.
1
0 / 0 / 0
Регистрация: 19.10.2019
Сообщений: 12
08.01.2020, 22:35  [ТС]
Спасибо огромное,все получилось)))

Добавлено через 1 час 52 минуты
Можно еще такой вопрос,когда делаю по тому же принципу остальные значения ,например мне нужно найти Id=Pd/Ud. То в окне пишет ,не число.Ошибок нет.В чем может быть ошибка ?
0
Модератор
Эксперт .NET
 Аватар для Yury Komar
4358 / 3428 / 512
Регистрация: 27.01.2014
Сообщений: 6,258
09.01.2020, 02:43
Evgenia2707, а при этом Pd и Ud чему равны?
Со скрина видно, что Ud у вас пустое, отсюда и ошибка может быть
0
266 / 217 / 54
Регистрация: 01.08.2016
Сообщений: 836
09.01.2020, 10:21
Evgenia2707, Вы свои коды покажите. Так трудно определить почему ошибку выдает
0
0 / 0 / 0
Регистрация: 19.10.2019
Сообщений: 12
09.01.2020, 11:23  [ТС]
Это все прописано в кнопке
VB.NET
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Public Class Form1 
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click 
 Dim Strra1 As New Strra With { 
 .kzap1 = CDbl(Replace(TextBox6.Text, ".", ",")), 
 .SctSok1 = CDbl(Replace(TextBox20.Text, ".", ","))} 
  Dim Class1 As New Class1 With { 
 .pd1 = CDbl(Replace(TextBox8.Text, ".", ",")), 
 .Ud1 = CDbl(Replace(TextBox3.Text, ".", ","))} 
 TextBox11.Text = Class1.S1 
 Dim Class2 As New Class2 With { 
 .U22l1 = CDbl(Replace(TextBox21.Text, ".", ",")), 
 .e1 = CDbl(Replace(TextBox17.Text, ".", ","))} 
 TextBox11.Text = Class2.S1 
 End Sub
А это в классе
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
Public Class Class1 
 Private pd As Double 
 Private Ud As Double 
 Public Property pd1 As Double 
 Get 
 Return pd = pd1 
 End Get 
 Set(value As Double) 
 pd = value 
 End Set 
 End Property 
 Public Property Ud1 As Double 
 Get 
 Return Ud = Ud1 
 End Get 
 Set(value As Double) 
 Ud = value 
 End Set 
 End Property 
 Public Function S1() As Double 
 Return pd / Ud 
 End Function 
End Class
 
Public Class Class2 
 Private U22l As Double 
 Private e As Double 
 Public Property U22l1 As Double 
 Get 
 Return U22l = U22l1 
 End Get 
 Set(value As Double) 
 U22l = value 
 End Set 
 End Property 
 Public Property e1 As Double 
 Get 
 Return e = e1 
 End Get 
 Set(value As Double) 
 e = value 
 End Set 
 End Property 
 Public Function S1() As Double 
 Return U22l / e 
 End Function 
End Class
0
266 / 217 / 54
Регистрация: 01.08.2016
Сообщений: 836
09.01.2020, 12:33
Лучший ответ Сообщение было отмечено Evgenia2707 как решение

Решение

Evgenia2707, Код в классах нужно записать так:
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
Private Ud As Double 
 Public Property pd1() As Double 
 Get 
 Return pd 
 End Get 
 Set(value As Double) 
 pd = value 
 End Set 
 End Property 
 Public Property Ud1() As Double 
 Get 
 Return Ud 
End Get 
 Set(ByVal value As Double) 
 Ud = value 
 End Set 
 End Property 
 Public Function S1() As Double 
 Return pd / Ud 
 End Function 
End Class
 
Public Class Class2 
 Private U22l As Double 
 Private e2 As Double 
 Public Property U22l1() As Double 
 Get 
 Return U22l 
 End Get 
 Set(ByVal value As Double) 
 U22l = value 
 End Set 
 End Property 
 Public Property e1() As Double 
 Get 
 Return e2
 End Get 
 Set(ByVal value As Double) 
 e2 = value 
 End Set 
 End Property 
 Public Function S1() As Double 
 Return U22l / e2 
 End Function 
End Class
Прошлый раз я вам неправильно написал класс. Переменую e назовите по другому. К примеру e2
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
09.01.2020, 12:33
Помогаю со студенческими работами здесь

непростой select
1- UID 2- Type сообщения 3-Дата сообщения 4- Время сообщения 5-Номер сообщение 6-вид Поля Type может иметь 2 значение: 1 -...

Непростой трейнер
Хочу написать трейнер к игре, для автоматизации строительства юнитов. Сложность для меня в том, что строительство запускается только кликом...

Рекламный вирус непростой
Появился рекламный вирус, что я только не делал: планировщик заданий проверял; ярлыки проверял; программы подозрительные удалил; в...

Шифр непростой замены
Шифр замены настолько хорошо известен, что никто не мыслит, что это может быть чем-то необычным. А я вот плохо знаю шифр простой замены....

Непростой расчет процента
Нужно сделать так чтобы: на товар до 1000 рублей была ставка 35% на товар от 4000 рублей и выше 20% а в промежутке чтоб процент сам...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 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-код на мобильном. Вращайте камеру одним пальцем,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru