|
3 / 0 / 0
Регистрация: 06.04.2011
Сообщений: 35
|
|
Разветвляющиеся вычислительные процессы. Оператор выбора.25.04.2011, 08:16. Показов 2578. Ответов 7
Метки нет (Все метки)
Составить программу для решения задачи, используя оператор выбора. Предусмотреть проверку данных на корректность.
Составить программу, которая запрашивает необходимые измерения геометрических тел (прямоугольный параллелепипед, правильная треугольная пирамида, конус, цилиндр, шар), проверяет данные на корректность и сообщает полную площадь поверхности и объём указанного тела.
0
|
|
| 25.04.2011, 08:16 | |
|
Ответы с готовыми решениями:
7
Разветвляющиеся вычислительные процессы Тема: «Разветвляющиеся алгоритмы. Оператор выбора Циклические вычислительные процессы. Вычислить первые 20 членов |
|
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
|
|
|
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
|
||||||||||||
| 28.04.2011, 08:27 | ||||||||||||
|
По кракозябрам трудно понять(при копировании - язык должен быть русским)
У тебя цифра? Добавлено через 8 минут
Нарисуй фигурки и поставь напротив каждой опцию. И чтоб опции были в массиве. Сделай глобальную переменную. Меня её по щелчку опции - присваивай значения индекса. А потом
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
|
|
|
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
|
|
| 28.04.2011, 17:00 | |
|
Помогаю со студенческими работами здесь
8
Разветвляющиеся алгоритмы: Оператор - Select Case!
Разветвляющиеся вычислительные процессы
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
Валидация и контроль данных табличной части документа перед записью
Maks 22.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в КА2.
Задача: контроль и валидация данных табличной части документа перед записью с учетом регламента компании. . .
|
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2.
Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом.
В. . .
|
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2.
Задача: отобразить спецтехнику, которая на данный момент находится в ремонте.
Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
|
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
|
|
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
|
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут
Суть:
- Группа наркоманов из 10 человек.
- Только один инфицирован ВИЧ.
- Колются одной иглой.
- Колются раз в день.
- Колются последовательно через. . .
|
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
|
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
|