Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- REM Начало программы
- Sub Main
- REM Определение переменных a, b для расчетов объемов,
- REM i - флаг для проверки Да-нет, telo - переменная выбора фигуры, v - переменная объема
- REM Integer - целое число, Single - обычное число
- REM формат определение Dim (доступно везде) [имя переменной] As [тип переменной]
- Dim a As Integer, b As Integer, i As Integer, telo As Integer, v As Single
- REM Создание метки для возврата к началу
- Schyot:
- REM Выбор фигуры для расчета переменная
- telo = val(InputBox("Объем какого тела будем считать? Куб (1), Сфера (2), Конус (3), Цилиндр (4)","Выбор фигуры для расчета объема. 21 вариант. Андреева Ксения"))
- REM Начало разветвления с выражением-селектором telo
- Select case telo
- REM Если telo равно 1, т.е. считаем куб
- case 1
- REM Вводим переменную сторону куба
- a = val(InputBox("Введите сторону куба","Рассчет объема куба"))
- REM Проверяем, чтобы она не была равна нулю. Нулю может быть равна из-за того что в поле ввода могли ввести 0 или любой другой символ-не число
- If (a = 0) Then
- REM Выводим сообщение об ошибке с предложением повторить рассчет
- REM Ответ пользователя записываем в i
- i = MsgBox ("Параметр введен неверно. Попробуем посчитать еще раз?", 4+16, "Ошибка")
- Else
- REM Если переменная не равна нулю - производим рассчет
- v = a * a * a
- REM Выводим ответ и предложение посчитать еще что-нибудь
- i = MsgBox ("Объем куба с введенными вами параметрами равен " + v + " Посчитаем еще?", 4, "Решено. Андреева Ксения")
- REM Конец условия
- End If
- case 2
- REM Вводим переменную радиус сферы
- a = val(InputBox("Введите сторону радиус сферы","Рассчет объема сферы"))
- REM Проверяем снова, что не ноль
- If (a = 0) Then
- REM Выводим ошибку
- i = MsgBox ("Параметр введен неверно. Попробуем посчитать еще раз?", 4+16, "Ошибка")
- Else
- REM Считаем объем сферы
- v = 4 * 3 * 3.14 * a * a * a
- REM Выводим ответ
- i = MsgBox ("Объем сферы с введенными вами параметрами равен " + v + " Посчитаем еще?", 4, "Решено. Андреева Ксения")
- REM Конец условия
- End If
- case 3
- REM Вводим радиус и высоту конуса
- a = val(InputBox("Введите сторону радиус конуса","Рассчет объема конуса"))
- b = val(InputBox("Введите сторону высоту конуса","Рассчет объема конуса"))
- REM Проверяем, что первая переменная не равна нулю
- If (a = 0) Then
- REM Если переменная равна нулю, выводим ошибку и спрашиваем посчитать снова
- i = MsgBox ("Параметр введен неверно. Попробуем посчитать еще раз?", 4+16, "Ошибка")
- REM Если первая не равна нулю, проверяем вторую
- ElseIf (b = 0) Then
- REM Если вторая равна нулю, выводим ошибку и спрашиваем пересчитать снова
- i = MsgBox ("Параметр введен неверно. Попробуем посчитать еще раз?", 4+16, "Ошибка")
- Else
- REM Если обе переменные не равны нулю производим рассчет
- v = 1 / 3 * 3.14 * a * a * b
- REM Выводим ответ и спрашиваем посчитать еще
- i = MsgBox ("Объем конуса с введенными вами параметрами равен " + v + " Посчитаем еще?", 4, "Решено. Андреева Ксения")
- REM Конец условия
- End If
- case 4
- REM Вводим радиус и высоту цилиндра
- a = val(InputBox("Введите сторону радиус цилиндра","Рассчет объема цилиндра"))
- b = val(InputBox("Введите сторону высоту цилиндра","Рассчет объема цилиндра"))
- REM Проверяем, что первая переменная не равна нулю
- If (a = 0) Then
- REM Если переменная равна нулю, выводим ошибку и спрашиваем посчитать снова
- i = MsgBox ("Параметр введен неверно. Попробуем посчитать еще раз?", 4+16, "Ошибка")
- REM Если первая не равна нулю, проверяем вторую
- ElseIf (b = 0) Then
- REM Если вторая равна нулю, выводим ошибку и спрашиваем пересчитать снова
- i = MsgBox ("Параметр введен неверно. Попробуем посчитать еще раз?", 4+16, "Ошибка")
- Else
- REM Если обе переменные не равны нулю производим рассчет
- v = 3.14 * a * a * b
- REM Выводим ответ и спрашиваем посчитать еще
- i = MsgBox ("Объем конуса с введенными вами параметрами равен " + v + " Посчитаем еще?", 4, "Решено. Андреева Ксения")
- REM Конец условия
- End If
- REM Если при выборе фигуры выбрали что-то кроме 1-4
- case Else
- REM Выводим ошибку и спрашиваем посчитать еще
- i = msgbox ("Неправильный выбор фигуры. Попробуем посчитать другое?", 4+16, "Ошибка")
- REM Конец разветвления
- End Select
- REM обработка ответа пользователя на всех концах
- REM В нашем случае i могло принимать значение 6 (да) или 7 (нет)
- REM Если ответ был да, то возвращаемся к метке, указанной в самом начале
- if (i = 6) then GoTo Schyot
- REM Конец программы
- End Sub
- REM вид функции msgbox ([текст внутри окна], [выбор кнопок], [заголовок окна])
- REM [текст внутри окна] пишется в кавычках, если выводим значение переменной то без кавычек пишем переменную (пример + v)
- REM [выбор кнопок] Если что, ты писала внутри LibreOffice. 4 - означает кнопки ДА-НЕТ, а 16 - добавляет значок ошибки
- REM [заголов окна] в кавычках
Add Comment
Please, Sign In to add comment