Лабораторная работа №1. Линейный алгоритм вычисление арифметического выражения

  • doc
  • 07.05.2020
Публикация на сайте для учителей

Публикация педагогических разработок

Бесплатное участие. Свидетельство автора сразу.
Мгновенные 10 документов в портфолио.

Иконка файла материала 78. Лабораторная работа №1. Линейный алгоритм вычисление арифметического выражения.doc

Лабораторная работа №1. Линейный алгоритм: вычисление арифметического выражения

Задание:

Даны константы A и B и произвольное x, вводимое с клавиатуры. Вычислить значение выражения  и вывести значение y на экран.

Выполнение:

I способ

1 Создайте в своей папке пустой документ Microsoft Office Word.

Назовите его lab1.

 

2 Откройте Visual Basic for Application.

 

Это можно сделать двумя способами:

 

1) Нажатием сочетание клавиш Alt-F11 из любого приложения MS Office (MS Word, MS Excel, MS Access).

2) Меню (в любом приложении MS Office):

Сервис > Макрос > Редактор Visual Basic.

 

3 Выполните команду Вставка / Модуль (Insert / Module) для создания листа модуля.

 

4 Наберите на листе модуля процедуру:

 

Private Sub Лин_алг()

 

'описание входной переменной

Dim x As Double

 

'описание выходной переменной

Dim y As Double

 

'задание констант

Const A = 2.5

Const B = 3

 

x = InputBox("Введите x") 'ввод значения переменной х

 

y = Sin(x) + Sqr(Abs(A * B + 3 * x ^ 2)) 'вычисление значения выражения

Res = MsgBox("y= " & y) 'выдача результата в отдельное окно

 

End Sub

 

 

! Обратите внимание:

1) Аргументы любой функции перечисляются в скобках:

неправильно: sin x

правильно: sin(x).

2) Квадратный корень вычисляется с помощью функции sqr().

3) Модуль вычисляется с помощью функции abs().

4) Знак умножения «*» опускать нельзя.

5) Количество открывающих скобок должно соответствовать количеству закрывающих скобок.

6) Операция возведения в степень задается с помощью символа “^” (комбинация клавиш Shift+6 в английской раскладке клавиатуры).

7) Каждая команда (или блок одинаковых команд) может сопровождаться комментарием.

Это делает текст программы понятным и легко читаемым.

 

 

5 Сохраните программу.

 

6 Запустите программу с помощью меню Run (либо клавишей F5, либо соответствующей кнопкой на панели инструментов).

 

7 Если есть ошибки, исправьте в соответствии с сообщениями компилятора (т. е. отладьте программу).

 

8 В окне InputBox (рис. 6) введите значение x, например 2.3, и нажмите кнопку ОК.

 

 

 

Рис. 6. Окно InputBox

 

 

9 В окне MsgBox отображается результат вычисления y (рис. 7).

 

 

Рис. 7. Окно MsgBox

 

 

10 Завершить выполнение программы можно нажав кнопку закрытия окна или в меню Run выбрать пункт Reset.

 

 

II способ (создание форм):

 

1 В редакторе Visual Basic создайте форму пользователя. Для этого:

 

• В меню выберите пункт: Insert > UserForm.

 

Или

 

• На панели инструментов нажмите на кнопку:  - Insert UserForm.

 

 

2 Измените заголовок формы:

 

Для этого в поле Caption (в окне Properties UserForm1) задайте нужное значение: №задания, Фамилия И.О. №группы, например, Задание 1. Иванов И.И. Гр. Д-1-2008.

 

Окно Properties появится  при создании формы в левой части экрана. Его вид представлен на рис. 8.

 

Поле Caption выделено на рис. 8 темно-серым цветом.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 8. Окно Properties UserForm1

 

 

3 Создайте элементы управления формой:

 

1) При создании формы на экране автоматически появляется панель элементов Toolbox (рис. 9). Если она отсутствует, отобразите ее на экране с помощью меню View >Toolbox.

 

 

Рис. 9. Панель Toolbox

 

2) Поместите (с помощью мыши) на форму надпись: элемент Label с панели Toolbox (рис. 10).

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


Рис. 10. Элементы панели Toolbox

 

 

3) Измените значение свойства Caption с “Label1” на название задания: Линейный алгоритм.

 

4) Поместите (с помощью мыши) на форму кнопку CommandButton1 с панели Toolbox (рис. 10).

 

5) Измените название кнопки Caption на Расчет.  С помощью мыши задайте свой размер кнопки.

 

4 Двойным щелчком по кнопке CommandButton1 откройте окно редактирования кода программы (в данном случае – подпрограммы-обработчика события нажатия кнопки).

В появившемся окне между текстом:

 

Private Sub CommandButton1_Click()

 

End Sub

 

Допишите текст:

 

Dim y As Double

Dim x As Double

Const A = 2.5

Const B = 3

x = InputBox("Введите x", "Окно ввода данных")

y = Sin(x) + Sqr(Abs(A * B + 3 * x ^ 2))

Res = MsgBox("y= " & y, , "Результат")

 

 

 

! Обратите внимание:

Строка: Private Sub CommandButton1_Click() является заголовком процедуры, которая выполнится при нажатии на кнопку CommandButton1.

Строка: End Sub обозначает конец процедуры.

Наличие обеих строк обязательно.

Команды, которые должны быть исполнены в ходе программы, должны располагаться в порядке следования между этими двумя строками: в теле процедуры.

 

5 Сохраните программу.

 

6 Запустите программу с помощью меню Run (либо клавишей F5, либо соответствующей кнопкой).

 

7 Если есть ошибки, исправьте (т. е. отладьте программу).

 

8 В отобразившемся окне (рис. 11) нажмите кнопку Расчет.

 

 

Рис. 11. Окно формы для задания 1

 

9 В окне InputBox (рис. 6) введите значение x, например 2,3; и нажмите кнопку ОК.

 

10 В окне MsgBox (рис. 7) отобразится результат вычисления y.

 

11 Завершить выполнение программы можно, нажав соответствующую кнопку или в меню Run выбрать пункт Reset.

 

12 Выполните задание своего варианта (номер варианта совпадает с номером студента в журнале) вторым способом.

 

13 В окне документа Microsoft Office Word оформите лист отчета, соответствующий первому заданию («Линейный алгоритм: вычисление арифметического выражения») по образцу, приведенному в Приложении 1. Чтобы скопировать окно формы и результатов в отчет, воспользуйтесь комбинацией клавиш Alt + PrintScreen.

Математические функции VBA

 

Функция

Возвращаемое значение

Abs(число)

Модуль (абсолютная величина) числа

Atn(число)

Арктангенс

Cos(число)

Косинус

Exp(число)

Экспонента (ех = exp(x))

Log(число)

Натуральный логарифм

Sgn(число)

Знак числа

Sin(число)

Синус

Sqr(число)

Квадратный корень из числа

Tan(число)

Тангенс

Fix(число)

Int(число)

Обе функции отбрасывают дробную часть числа и возвращают целое значение. Для положительных чисел одинаковы. Отличие в отрицательном числе: Fix – отбрасывает дробную часть, а Int – еще и округляет.

Rnd(число)

Случайное число из интервала [0,1); перед вызовом надо использовать инструкцию randomize

 

Запись арифметических выражений

В программах на VBA можно использовать стандартный набор операций над данными:

сложение

+

вычитание

-

умножение

*

деление

/

 

Операция

Пример

Целочисленное деление \ (возвращает целую часть частного, дробная часть отбрасывается)

17 \ 5 = 3

10 \ 3 = 3

Остаток от деления по модулю mod

17 mod 5 = 2

11 mod 5 = 1

6 mod 2 = 0

Возведение в степень ^

3^2 = 9

2^3 = 8

 

Так как с клавиатуры всю информацию вводят в одну строку, то при вводе «многоэтажных» выражений ставятся скобки, например:

.

Варианты

 

1.                       2.     

3.                              4.               

5.                                    6.                       

7.                            8.          

9.                                   10.               

11.                                 12.      

13.                                 14.             

15.                            16.        

 

17.                            18.

 

19.                                20.

 

21.                                  22.

 

23.                                                   24.

25.                              26.

 

27.                              28.

 

29.                                   30. .


Скачано с www.znanio.ru