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

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

25.04.2011, 08:16. Показов 2539. Ответов 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
Ответ Создать тему
Новые блоги и статьи
изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru