|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Линейные структурыЛабораторная работа № 1 1. Запуск проекта VBA (порядок действий), проект VBA: лист и модуль для ввода текста программ 2. Представление чисел в формате с фиксированной и плавающей точкой. 3. Чтение программ с передачей параметров 4. Программирование задач с неявно заданным алгоритмом
Запуск проекта VBA производится следующим образом: 1. Открыть приложение (в нашем случае Excel) 2. На вкладке Разработчик нажать кнопку Visual Basic – откроется окно редактора VB а) Если вкладка отсутствует, то перейти к пункту Параметры – Настройка ленты. В столбце Основные вкладки поставить галочку в поле Разработчик. б) Более простой способ вызова редактора VB – нажать сочетание клавиш Alt + F11. 3. В горизонтальном меню окна редактора VB выбрать пункт Insert (Вставка). В ниспадающем меню выбрать Module. Появляется окно для ввода текста программы.
1.1. Примеры чтения программ с линейным алгоритмом
Пример 1.1. Прочесть программу, написанную в модуле, сопровождающем лист Excel, записать результат, который появится после выполнения программы в ячейке листа С1.
Решение: 1. Сопоставляем формальные параметры x, y при вызове программы с фактическими значениями, записанными в ячейках Excel в формате с плавающей точкой: x = [число в ячейке А1 ] = 10000,0E–01 = 10000×10-1 = 1000 (формат с фиксированной точкой). y = [число в ячейке B1 ] = 0,81E+02 = 0,81×102 = 81
2. Переходим к вычислению z, записывая операторы VBA математическими формулами:
3. Для деления по модулю (функция Mod) производим деление «столбиком»:
4. В ячейке С1 будет число 1.
Пример 1.2. Прочесть программу, написанную в модуле, сопровож-дающем лист Excel, записать результат, который появится после выполнения программы в ячейке листа B3.
Решение: 1. Сопоставляем формальные параметры a%, b% при вызове программы с фактическими значениями, записанными в ячейках Excel B1 и C1: a% = [число в ячейке B1 ] = 2,1 Þ 2 – число присваивается целочисленной переменной, поэтому происходит округление до ближайшего целого. b% = [число в ячейке С1 ] = 3,3 Þ 3 2. Переменная Pi получает значение из ячейки А1, где записана стандартная функция Excel ПИ() = p, в результате, Pi = p = 3,1415…. 3. с = 4. В результате на листе Excel в ячейке B3 будет 1,5:
Пример 1.3. Прочесть программу, написанную в модуле, сопровождающем лист Excel, записать результат, который появится после выполнения программы в ячейке листа B2.
Решение: 1. Сопоставляем формальный параметр x при вызове программы с фактическим значением 4.8, указанным при вызове функции: x = 4.8 2. Выполняем целочисленное деление в два этапа a) Округляем x до целого значения 5 б) Выполняем деление до тех пор, пока остаток не станет меньше делителя:
3. с% = Þ3 (округляем до целого числа) 4. examp = 3
1.2. Задания для самостоятельного чтения линейных программ На рисунке представлен фрагмент листа Excel и текст сопровождаю-щей его программы. Показать, в каких ячейках листа и какой результат будет после выполнения этой программы.
1.3. Примеры разработки линейных программ для задач с неявным алгоритмом
Пример 1.3. Составить программу для вычисления пути равноускоренного движения, определяемого по формуле , для заданного набора параметров, например, и любого времени t.
Решение: Заносим параметры в ячейки листа Excel: в первом столбце делаем подписи к ячейкам, во втором – вносим числовые значения для переменных, в третьем – их размерности. Первый и третий столбцы являются необязательными, они служат лишь для оформления задачи. В третьей строке вызываем программу-функцию, реализующую расчет по заданной формуле. Текст программы:
Рассмотрим еще один вариант решения задачи. Недостатком написанной выше программы является тот факт, что пользователь должен знать, КУДА помещать данные на листе, т.е. видеть и понимать текст программы. Для того, чтобы сделать программу более универсальной, параметры v и a вносим в формальные параметры заголовка программы: Function s(t, v, a) s = v * t + a * t ^ 2 / 2 End Function При вызове такой программы вместо формальных параметров v и a в полях палитры пользовательской функцииуказываются адреса ячеек, где находятся значения переменных: (Рис. 1).
Рис. 1.1 Палитра пользовательской функции S(t,v,a)
Пример 1.4. Составить программу, определяющую количество секторов, занятых файлом на дискете, если известен его размер в байтах? Решение: Известно, что один сектор имеет размер 512 байт. Программа, рассчитывающая целое число занятых секторов, может быть записана или через операцию целочисленного деления, или через функцию Fix.
Здесь формальный параметр V – передаваемый объем файла в байтах. Недостатком обеих программ является их непригодность в случае кратности числа V числу 512: единицу в формуле для этого случая не следует прибавлять. Обойти этот недостаток можно, используя условные операторы, которые будут рассмотрены в следующем параграфе.
1.4. Задания для программирования задач с неявно заданным линейным алгоритмом
1. Вычислить общее сопротивление трех резисторов, соединенных последовательно и параллельно. 2. Дана длина ребра куба. Найти объем куба и площадь его боковой поверхности. 3. Даны два действительных положительных числа. Найти среднее арифметическое и среднее геометрическое этих чисел.
Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.006 сек.) |