ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 26.07.2024
Просмотров: 255
Скачиваний: 0
Продолжение табл. 2
№ варианта |
Задание |
9 |
Ввести три числа a, b, c. Определить, принадлежит ли максимальное из них интервалу [1,3], и вывести соответствующее сообщение |
10 |
Определить правильность даты, введенной с клавиатуры (число от 1 до 31, месяц – от 1 до 12), если введены некорректные данные, то сообщить об этом |
11 |
Составить программу, определяющую результат гадания на ромашке «любит – не любит», взяв за исходное данное количество лепестков N |
12 |
Ввести три положительные вещественные числа a, b, c. Определить, существует ли треугольник с длинами сторон a, b, c. Если нет, то вывести соответствующее сообщение, если да, то определить форму треугольника (остро-, прямо- или тупоугольный) и вывести соответствующее сообщение |
13 |
Написать программу, распознающую по длинам сторон среди всех треугольников прямоугольные. Если таковых нет, то вычислить величину угла С |
14 |
Ввести четыре положительные целые числа a, b, c, d. Определить, может ли прямоугольник со сторонами a, b уместиться внутри прямоугольника со сторонами c, d так, чтобы каждая из сторон прямоугольников была параллельна или перпендикулярна другим сторонам. Вывести соответствующее сообщение |
15 |
Даны три числа a, b, c. Определить, какое из них равно d. Если ни одно не равно d, то найти max (d-a, d-b, d-c) |
16 |
Заданы размеры А, В прямоугольного отверстия и размеры X, Y, Z кирпича. Определить, пройдет ли кирпич через отверстие |
17 |
Определить номер четверти координатной плоскости, в которой расположен треугольник, образованный прямой, заданной уравнением вида y = kx+b, и осями координат. Вывести соответствующее сообщение |
Продолжение табл. 2
№ варианта |
Задание |
18 |
Составить программу, осуществляющую перевод величин из радианной меры в градусную или наоборот. Программа должна запрашивать, какой перевод нужно осуществить, и выполнять указанное действие |
19 |
Написать программу, которая по заданным трем числам определяет, является ли сумма каких-либо двух из них положительной |
20 |
Ввести два целых числа а, b. Если значение а делится нацело на 3 и значение b делится нацело на 5, то вывести полусумму квадратов этих чисел, иначе вывести сумму |
21 |
В небоскребе N этажей и всего один подъезд; на каждом этаже по 3 квартиры; лифт может останавливаться только на нечетных этажах. Человек садится в лифт и набирает номер нужной ему квартиры М. На какой этаж должен доставить лифт пассажира? |
22 |
Составить программу, которая проверяла бы, не приводит ли суммирование двух целых чисел А и В к переполнению (т.е. к результату большему, чем 32 767). Если будет переполнение, то сообщить об этом, иначе вывести сумму этих чисел |
23 |
Составить программный модуль для определения, является ли треугольник со сторонами a, b, c равнобедренным |
24 |
Составить алгоритм и программный модуль для нахождения произведения четных чисел от 50 до 100 |
25 |
Составить алгоритм и программный модуль для нахождения произведения нечетных чисел от 41 до 89 |
26 |
Разработайте программу «Угадай-ка», которая будет загадывать число, а пользователь пытаться его угадать. Создайте следующую форму:
|
Окончание табл. 2
№ варианта |
Задание |
|
А. Щелкните по кнопке Ответ и в процедуре обработки события создайте код, который сравнивает введенное пользователем число в Text1.text с любым фиксированным числом, например, 5. Если числа равны, то в Text2.text должно быть выведено «Угадал», в противном случае – «Не угадал». Б. Запустите программу, введите исходные данные, щелкните по кнопке Ответ, протестируйте программу, остановите, исправьте при необходимости ошибки в программе. В. Доработайте программу так, чтобы она в Text2.text сообщала «Больше», «Меньше», либо «Горячо», если разница между числами меньше 10, и холодно, если 10 и более |
Порядок выполнения работы
Открыть в бригадной папке созданный в предыдущей лабораторной работе Excel-документ с именем «max2_my» и подготовить для текущей работы копию этого документа по команде «Файл/Сохранить как», задав для копии имя «max3_my».
Запустить редактор VBA. Результат: открытие окна и формы ранее созданного проекта.
Оставить имя проекта «Проба_If», но изменить свойством «Caption» заголовок формы на «Выбор максимума из трех чисел».
Дополнить форму надписью «Ввод с» (с – латинская буква) и текстовым полем для ввода значения переменной «с» с именем «Text4». Задать в этом поле, например, значение 15.
Примечание. Если в форме нет свободного места для дополнительных объектов, то следует сместить ранее созданные объекты, возможно, уменьшив их размеры.
Дополнить текст подпрограммы, используя возможность копирования фрагментов текста:
в инструкцию Dim вставить описание переменной «с» и изменить в этой инструкции и далее по тексту имя результата на «max3»;
вставить строку с оператором присваивания переменной «с» числового значения из поля «Text4»;
вставить строку со вторым условным оператором без ветви «Else» для переприсваивания переменной «max3» значения переменной «с», если выполняется соответствующее условие.
Примечание. Для рационального использования поля редактирования с текстом подпрограммы (чтобы весь текст был виден в этом поле) можно воспользоваться следующими двумя возможностями размещения текста:
логически единую, но длинную строку инструкции Dim (или другой инструкции внутри оператора), выходящую, возможно, за правую границу поля, можно разместить на две строки (и более), обозначив перенос; для этого нужно после запятой (разделителя списка описаний переменных) или по тексту другой инструкции вставить пробел, знак подчерк, а далее, нажав клавишу Enter, перенести остаток текста строки на следующую строку поля (для наглядности рекомендуется сместить перенесенный текст вправо под аналогичные элементы списка описаний переменных);
для размещения всего текста на виду в поле редактирования по вертикали можно размещать в одной строке поля по несколько коротких записей операторов, разделяя их внутри строки двоеточием (в конце строки перед следующей строкой операторов двоеточие не ставить).
Сохранить вновь созданный проект, выполнить заложенную в него программу и в конце работы закрыть файл.
Скопировать в бригадную папку:
в вычислительном центре из папки Х:\Программы каф. ПМ и САПР\Наумов\VBA,
на кафедре ПМ и САПР из папки \Naumov\VBA файлы max2.xls и max3_func.xls.
Открыть сначала файл max2.xls, а в нем – программную реализацию проекта вывода максимального из 2-х чисел с помощью структурированной программы, состоящей из главной (командной, вызывающей) подпрограммы с именем «CmdРешение» и вспомогательной (вызываемой, содержащей описание выполняемых действий) подпрограммы с именем «Анализ».
Ознакомиться с содержанием программы «Выбор максимального числа из двух чисел с помощью структурированной программы, состоящей из главной и вспомогательной подпрограмм»
Вспомогательная подпрограмма (описание)
Private Sub Анализ (Byval x As Integer, └┘–
Byval y As Integer, └┘–
ByRef r As Integer)
If x>y Then
r = x
Else
If x<y Then Вложенный оператор
r = y
Else Блок из 2-х операторов
МsgBox “числа равные”: r = x
End If
End If
End Sub
Главная подпрограмма
Private Sub CmdРешение_ Click ()
Dim a As Integer, b As Integer, └┘–
maximum2 As Integer
a = CInt (Text1.Text)
b = CInt (Text2.Text)
Анализ a, b, maximum2 Вызов вспомогательной подпрограммы
Text3.Text= maximum2
End Sub
Пояснения.
В главной подпрограмме помещен вызов вспомогательной подпрограммы с именем «Анализ». После имени следует список фактических параметров: «а» и «b» – входные данные, «maximum2» – результат анализа.
В описании вспомогательной подпрограммы помещен блочный условный оператор. В этой подпрограмме фигурируют формальные параметры, соответствующие фактическим параметрам по месту в списке и типу.
Перед именем каждого формального параметра стоит одно из двух ключевых (служебных) слов: ByVal или ByRef. Эти слова определяют статус параметра, а именно условия передачи параметра в подпрограмму и из нее.
Слово ByVal задает передачу по значению (By Value – посредством значения). Параметры такого статуса являются только входными. На их месте при вызове подпрограммы на выполнение в качестве фактических параметров кроме переменных, имеющих присвоенные им значения, могут стоять непосредственно числа и даже арифметические выражения. Значение переменной, переданной по значению, остается в вызывающей подпрограмме неизменным, даже если оно изменялось внутри вызываемой (вспомогательной) подпрограммы.