Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.62/13: Рейтинг темы: голосов - 13, средняя оценка - 4.62
3 / 0 / 0
Регистрация: 06.04.2011
Сообщений: 35

Разветвляющиеся вычислительные процессы. Оператор выбора.

25.04.2011, 08:16. Показов 2547. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Составить программу для решения задачи, используя оператор выбора. Предусмотреть проверку данных на корректность.
Составить программу, которая запрашивает необходимые измерения геометрических тел (прямоугольный параллелепипед, правильная треугольная пирамида, конус, цилиндр, шар), проверяет данные на корректность и сообщает полную площадь поверхности и объём указанного тела.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
25.04.2011, 08:16
Ответы с готовыми решениями:

Разветвляющиеся вычислительные процессы
№1. Разветвляющиеся вычислительные процессы. Определить, состоит ли введенное 2-значное целое число из одинаковых цифр. ...

Тема: «Разветвляющиеся алгоритмы. Оператор выбора
если можно со скрипштонами Среда разработки – Visual BASIC 6.0. Разработать приложение, реализующее подсчет числа броуновских...

Циклические вычислительные процессы. Вычислить первые 20 членов
дано вычислить первые 20 членов \cos x=1-{x}^{2}/2+{x}^{4}/4-{x}^{6}/6+.....+{x}^{2n+1}*z/2n

7
 Аватар для gitarillo
755 / 554 / 48
Регистрация: 17.06.2010
Сообщений: 1,041
Записей в блоге: 1
25.04.2011, 12:36
MontiK,
Сделай на форму комбобокс и в него добавь список фигур.
При событии клик на комбобоксе с помощью Select Case задавай нужные параметры и вычисляй нужные величины. Проблема то в чем?
1
3 / 0 / 0
Регистрация: 06.04.2011
Сообщений: 35
28.04.2011, 01:15  [ТС]
у меня с Select Cаse не очень(( как задавать??? и нужно ли сравнивать получ значения со случайными S и V???
ааа, мне срочно нужно

Добавлено через 1 час 39 минут
вот что я сделала, но где же ошибка?
Private Sub MessageR(TypeS As Integer)
Dim m As Integer 'íîìåð íàæàòîé êíîïêè íà ñîîáùåíèè
If TypeS = 1 Then 'åñëè ÷èñëî óãàäàíî
m = MsgBox("Êîëè÷åñòâî ïîïûòîê: " & countR & countl & counth & counta & " Íà÷àòü íîâûé ñåàíñ?", vbOKCancel, "Ñåàíñ îêîí÷åí")
Else 'çàêîí÷èëèñü ïîïûòêè
m = MsgBox("Ó âàñ çàêîí÷èëèñü ïîïûòêè. Íà÷àòü íîâûé ñåàíñ?", vbOKCancel, "Game over!")
End If
If m = 1 Then 'Âûáðàíà êíîïêà "ÎÊ"
countR = 0 'îáíóëåíèå êîëè÷åñòâà ïîïûòîê
countl = 0 'îáíóëåíèå êîëè÷åñòâà ïîïûòîê
counth = 0 'îáíóëåíèå êîëè÷åñòâà ïîïûòîê
counta = 0 'îáíóëåíèå êîëè÷åñòâà ïîïûòîê
Combo5.Text = ""
cmbChislo.Text = ""
'Form1.BackColor = R
End If
End Sub



Private Sub Command2_Click()
Dim R As Byte, l As Byte, h As Byte, a As Byte
Dim countR As Byte, countl As Byte, counth As Byte, counta As Byte
Const maxCount As Byte = 10
R = Int(Rnd * 10)
l = Int(Rnd * 10)
h = Int(Rnd * 10)
a = Int(Rnd * 10)
Sïîëí = Combo5.Text
Chislo = Combo7.Text
countR = countR + 1
countl = countl + 1
counth = counth + 1
counta = counta + 1
Select Case Sïîëí
Case "ïðÿìîóã. ïàðàëëåëåïèïåä"
If Sïîëí = 4 * a * h + 2 * (a ^ 2) Then
Label9.Caption = Sïîëí & " - ïàðàë-ä"
MessageR (1)
Else
Label9.Caption = "Íåò"
End If
Case "Ïðàâ.Òðåóã. ïèðàìèäà"
If Sïîëí = ((3 / 2) * a * h) + ((a ^ 2) * (3 ^ 1 / 2)) / 4 Then
Label9.Caption = Sïîëí & " - ïðàâ.òåóã.ïèðàìèäà"
MessageR (1)
Else
Label9.Caption = "Íåò"
End If
Case "öèëèíäð"
If Sïîëí = (2 * 3.14 * R) * (h + R) Then
Label9.Caption = Sïîëí & " - öèëèíäð"
MessageR (1)
Else
Label9.Caption = "Íåò"
End If
Case "øàð"
If Sïîëí = 4 * 3.14 * (R ^ 2) Then
Label9.Caption = Sïîëí & " - øàð"
MessageR (1)
Else
Label9.Caption = "Íåò"
End If
Case "êîíóñ"
If Sïîëí = (3.14 * R) * (l + R) Then
Label9.Caption = Sïîëí & " - êîíóñ"
MessageR (1)
Else
Label9.Caption = "Íåò"
End If
End Select
If countR >= maxCount Then MessageR (2)
End If
If countl >= maxCount Then MessageR (2)
End If
If counth >= maxCount Then MessageR (2)
End If
If counta >= maxCount Then MessageR (2)
End If



End Sub

Добавлено через 1 час 27 минут
Как задать оператор Select Case в объекте ComboBox (Visual Basic 6.0)?
Dim R, l, h, a As Single, Sïîëí As Byte, V As Byte
Combo5.AddItem "ïðÿìîóã. ïàðàë-ä"
Combo5.AddItem "ïðàâ.òåóã.ïèðàìèäà"
Combo5.AddItem "öèëèíäð"
Combo5.AddItem "øàð"
Combo5.AddItem "êîíóñ"

R = Val(Text1.Text)
l = Val(Text2.Text)
h = Val(Text3.Text)
a = Val(Text4.Text)



Select Case Combo5.ListIndex
Case "ïðÿìîóã. ïàðàë-ä"
If Combo5 = "ïðÿìîóã. ïàðàë-ä" Then
S = (4 * a * h) + (2 * (a ^ 2))
MsgBox ("S=" & S)
End If
Case "ïðàâ.òåóã.ïèðàìèäà"

S = ((3 / 2) * a * h) + ((a ^ 2) * (3 ^ 1 / 2)) / 4
If Combo5 = "ïðàâ.òåóã.ïèðàìèäà" Then
End If
MsgBox ("S=" & S)
Case "öèëèíäð"
If Combo5 = "öèëèíäð" Then
S = (2 * 3.14 * R) * (h + R)
MsgBox ("S=" & S)
End If
Case "øàð"
If Combo5 = "øàð" Then
S = 4 * 3.14 * (R ^ 2)
MsgBox ("S=" & S)
End If
Case "êîíóñ"
If Combo5 = "êîíóñ" Then
S = (3.14 * R) * (l + R)
MsgBox ("S=" & S)

End If
End Select

End Sub

Добавлено через 36 минут
попыталась сделать еще. не выдает ответа, не пойму где ошибка. вот код:
Private Sub Combo5_click()

Select Case Combo5.ListIndex
Case "ïðÿìîóã. ïàðàë-ä"
If Combo5 = "ïðÿìîóã. ïàðàë-ä" Then
MsgBox ("S=" & S1)
End If

Case "ïðàâ.òåóã.ïèðàìèäà"
If Combo5 = "ïðàâ.òåóã.ïèðàìèäà" Then
MsgBox ("S=" & S2)
End If

Case "öèëèíäð"
If Combo5 = "öèëèíäð" Then
MsgBox ("S=" & S3)
End If

Case "øàð"
If Combo5 = "øàð" Then
MsgBox ("S=" & S4)
End If

Case "êîíóñ"
If Combo5 = "êîíóñ" Then
MsgBox ("S=" & S5)
End If
End Select
End Sub


Function S(R As Single, l As Single, h As Single, a As Single) As Single
R = Val(Text1.Text)
l = Val(Text4.Text)
h = Val(Text5.Text)
a = Val(Text6.Text)
S1 = (4 * a * h) + (2 * (a ^ 2))
S2 = ((3 / 2) * a * h) + ((a ^ 2) * (3 ^ 1 / 2)) / 4
S3 = (2 * 3.14 * R) * (h + R)
S4 = 4 * 3.14 * (R ^ 2)
S5 = (3.14 * R) * (l + R)
End Function

А может можно в самом коде посчитать S??
0
 Аватар для Alex77755
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
28.04.2011, 08:27
По кракозябрам трудно понять(при копировании - язык должен быть русским)
Visual Basic
1
2
3
4
5
Select Case Combo5.ListIndex
Case 1
код
Case 2
код
После Case при таком выборе должна быть цифра.
У тебя цифра?

Добавлено через 8 минут
А может можно в самом коде посчитать S??
Конечно проще.
Нарисуй фигурки и поставь напротив каждой опцию.
И чтоб опции были в массиве.
Сделай глобальную переменную. Меня её по щелчку опции - присваивай значения индекса.
А потом

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
Select Case G
 
Case 1
S1 = (4 * a * h) + (2 * (a ^ 2))
Case 2
S2 = ((3 / 2) * a * h) + ((a ^ 2) * (3 ^ 1 / 2)) / 4
..........
...........
..........
End select
MsgBox S
1
3 / 0 / 0
Регистрация: 06.04.2011
Сообщений: 35
28.04.2011, 15:03  [ТС]
а при подсчитывании S необходимо задать параметры. могу ли я их задать в самом коде Combobox??? или их отдельно нужно задавать??
0
3 / 0 / 0
Регистрация: 06.04.2011
Сообщений: 35
28.04.2011, 15:56  [ТС]
Переделала. параметры задала отдельно. вот что получилось:
Private Sub Combo5_Click()
Select Case Combo5.ListIndex
Case 1
Label9.Caption = InputBox("R")
Label10.Caption = InputBox("l")
Label11.Caption = InputBox("h")
Label12.Caption = InputBox("a")
S1 = (4 * a * h) + (2 * (a ^ 2))
ret = MsgBox("S1=" & S1, vbInformation, "парал-д")

Case 2
Label9.Caption = InputBox("R")
Label10.Caption = InputBox("l")
Label11.Caption = InputBox("h")
Label12.Caption = InputBox("a")
S2 = ((3 / 2) * a * h) + ((a ^ 2) * (3 ^ 1 / 2)) / 4
ret = MsgBox("S2=" & S2, vbInformation, "пирамида")

Case 3
Label9.Caption = InputBox("R")
Label10.Caption = InputBox("l")
Label11.Caption = InputBox("h")
Label12.Caption = InputBox("a")
S3 = (2 * 3.14 * R) * (h + R)
ret = MsgBox("S3=" & S3, vbInformation, "цилиндр")

Case 4
Label9.Caption = InputBox("R")
Label10.Caption = InputBox("l")
Label11.Caption = InputBox("h")
Label12.Caption = InputBox("a")
S4 = 4 * 3.14 * (R ^ 2)
ret = MsgBox("S4=" & S4, vbInformation, "шар")

Case 5
Label9.Caption = InputBox("R")
Label10.Caption = InputBox("l")
Label11.Caption = InputBox("h")
Label12.Caption = InputBox("a")
S5 = (3.14 * R) * (l + R)
ret = MsgBox("S5=" & S5, vbInformation, "Конус")
End Select
End Sub

Но пробегает Case 1 , т.е ваще не учитывает, а S = 0 во всех случаях. Где ошибка??

Добавлено через 8 минут
причем эти 1,2,3,4,5 я задавала отдельно, вот так:
Private Sub Form_Load()
Combo5.AddItem "1"
Combo5.AddItem "2"
Combo5.AddItem "3"
Combo5.AddItem "4"
Combo5.AddItem "5"
End Sub
или так не нужно было делать?? может из-за этого??
0
 Аватар для gitarillo
755 / 554 / 48
Регистрация: 17.06.2010
Сообщений: 1,041
Записей в блоге: 1
28.04.2011, 16:03
Visual Basic
1
Select Case Combo5.ListIndex
замени на
Visual Basic
1
Select Case Combo5.text
1
3 / 0 / 0
Регистрация: 06.04.2011
Сообщений: 35
28.04.2011, 17:00  [ТС]
ой, спасибо! заменила, считает! но S = 0 осталось. по формулам вроде должен все считать... что же не так?!

Добавлено через 52 минуты
УРРРА!!!
Вот конечный результат:
Private Sub Combo5_Click()
Select Case Combo5.Text
Case 1
Label11.Caption = InputBox("h")
Label12.Caption = InputBox("a")
a = Label11.Caption
h = Label12.Caption
S = (4 * a * h) + (2 * (a ^ 2))
ret = MsgBox("S=" & S, vbInformation, "Ïðÿìîóã ïàðàë-ä")

Case 2
Label11.Caption = InputBox("h")
Label12.Caption = InputBox("a")
a = Label11.Caption
h = Label12.Caption
S = (((3 / 2) * a * h) + ((a ^ 2) * (3 ^ 1 / 2))) / 4
ret = MsgBox("S=" & S, vbInformation, "Ïðàâ Òðåóã Ïèðàìèäà")

Case 3
Label9.Caption = InputBox("R")
Label11.Caption = InputBox("h")
h = Label12.Caption
R = Label9.Caption
S = (2 * 3.14 * R) * (h + R)
ret = MsgBox("S=" & S, vbInformation, "Öèëèíäð")

Case 4
Label9.Caption = InputBox("R")
R = Label9.Caption
S = 4 * 3.14 * (R ^ 2)
ret = MsgBox("S=" & S, vbInformation, "Øàð")

Case 5
Label9.Caption = InputBox("R")
Label10.Caption = InputBox("l")
R = Label9.Caption
l = Label10.Caption
S = (3.14 * R) * (l + R)
ret = MsgBox("S=" & S, vbInformation, "Êîíóñ")
End Select
End Sub
:dance3:
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
28.04.2011, 17:00
Помогаю со студенческими работами здесь

Итерационные вычислительные процессы. Вычислить произведение членов ряда
Вычислить произведение членов ряда при x=1.82+\cos n P=x/2!*x/4!*x/6!*....

Разветвляющиеся алгоритмы: Оператор - Select Case!
Разработать приложение, реализующее подсчет числа броуновских частиц, попадающих в объектив (фиксированная область в форме окружности)...

Как ускорить вычислительные процессы программы?
Чтобы сделать быструю программу, в которой много вычислений, Надо по возможности не делать эти вычисления в самой программе, а...

Разветвляющиеся вычислительные процессы
Здравствуйте дорогие форумчане!!! Не могли бы вы мне помочь в решение программы, очень нужно. Программа очсуществляться должна в JavaScript...

Разветвляющиеся вычислительные процессы
Помогите пожалуйста. Написать программу, которая определяет, попадает ли точка с заданными координатами в область, закрашенную на рисунке...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
[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