Математическое и имитационное моделирование
Ниже представлены лабораторные работы с решениями по имитационному моделированию экономических процессов (выполненные в МатБюро). Вы можете скачать готовые файлы работ ниже по ссылкам, а также узнать больше о решении подобных заданий из методичек и практикумов.
Готовые лабораторные по имитационному моделированию
- Генерирование последовательностей равномерно распределенных случайных величин
, 6 страниц - Моделирование одноканальной системы массового обслуживания, 11 страниц
Показать условиеС помощью электронной таблицы Excel провести пошаговое моделирование простейшей одноканальной СМО с неограниченной однородной очередью на обслуживание и дисциплиной обслуживания FIFO, при этом интервалы поступления заявок на обслуживание и длительности их обслуживания дискретны и равномерно распределены в заданных интервалах.
Промоделировать обслуживание 100 заявок и определить следующие характеристики исследуемой система массового обслуживания:
1. средний интервал поступления заявки на обслуживание, отклонение, дисперсию
2. среднее время обслуживания (интервал обслуживания), отклонение, дисперсию
3. минимальное и максимальное время обслуживания
4. среднее время ожидания обслуживании, отклонение и дисперсию
5. среднее время нахождения заявки в системе, отклонение и дисперсию
6. минимальная, максимальная и средняя длина очереди
7. необходимое время на обслуживание 100 заявок. - Модели динамики численности популяций, 8 страниц
Цель работынаучиться использовать модели динамики популяций с помощью электронных таблиц.
- Лабораторная программа (программа Имитатор), 22 страницы
Показать заданияЗадача 1. Рассматривается модель управления запасами с пороговой стратегией, имитирующая работу склада, который занимается продажей материалов. Ежедневный спрос заранее неизвестен. Неопределенным является и минимальный запас, который нужно поддерживать на складе ежедневно. С одной стороны, с увеличением запаса товара растут эксплуатационные расходы. С другой стороны, при уменьшении запаса товара может возникнуть ситуация, при которой некоторые покупатели, оформившие покупку, не смогут получить товар к концу рабочего дня. В то же время организация подвоза новых партий товара требует нескольких дней и сопряжена с дополнительными затратами.
1) цена хранения одной единицы товара в течение суток определяется как 14% от цены изделия, цена изделия равна 40 руб.;
2) стоимость затрат, вызванных дефицитом товара, пропорциональна неудовлетворенному спросу. Ущерб в результате простоя цеха складывается из прямых убытков, равных 3,4 руб. (оплата рабочим вынужденного простоя), и упущенной выгоды, которая равна 0,8 руб. (процент на замороженные в незавершенном производстве вследствие дефицита оборотные средства);
3) случайная величина времени поставки распределена по нормальному закону со средним значением 5 часов и средним квадратическим отклонением 0,05 час., стоимость поставки единицы продукции равна 4,2 руб.
4) величина спроса распределена по нормальному закону со средним значением 200 шт. и средним квадратическим отклонением 15 шт.
5) начальный уровень запаса на складе равен 1500 шт.;
6) период работы склада равен 224 часа.
Показатель эффективности — максимальные гарантированные затраты.
Показатель эффективности — максимальные гарантированные затраты.
С помощью этой модели определите уровень запаса, при котором должна оформляться заявка на поставку дополнительной партии и объем партии товара. Рассмотрите 5-10 вариантов.
Какова эффективность системы, если новая заявка оформляется лишь в том случае, когда все запасы закончились (страховой запас отсутствует)? Проанализируйте полученные результаты
2. Доставка товара может осуществляться с помощью различных видов транспорта.
Каждый способ доставки имеет следующие характеристики.
Воздушный транспорт:
среднее время поставки партии товара МТ — 4 час;
среднее квадратическое отклонение от среднего значения равно 0,02 час;
стоимость поставки единицы продукции равна 5 руб.
Использование какого способа доставки наиболее эффективно?
Железнодорожный транспорт:
1,6МТ — среднее время поставки партии товара;
среднее квадратическое отклонение от среднего значения равно 0,01 час;
стоимость поставки единицы продукции равна 3 руб.
Автомобильный транспорт:
1,3МТ — среднее время поставки партии товара;
среднее квадратическое отклонение от среднего значения равно 0,02 час;
стоимость поставки единицы продукции равна 4 руб.
3. Запишите как изменится формула расчета стоимости доставки в модели управления запасами в том случае, если известно, что в случае доставки поездом стоимость одного вагона, который может вмещать D изделий равно А1?Задача 2. Предприниматель имеет пять торговых точек в различных районах города, каждая из которых занимается продажей товаров. Он решил закрыть одну из точек. Для этого ему нужно определить, какая из них принесет меньший доход. Предприниматель располагает данными, представленными в таблице 4.
Кроме того, в некоторых заранее не предсказуемых случаях фирме придется нести внеплановые убытки, связанные с кражами, действиями рэкетиров (табл. 5).
Выручка от продажи какого-либо вида товара на одном из пунктов торговли имеет усеченное нормальное распределение с заданными параметрами. Величину убытка можно также определить, используя усеченное нормальное распределение. Относительное среднеквадратическое отклонение выручки и убытка примите равным 0,1, минимальная относительная выручка и максимальная относительная выручка (и убыток) равны 1 и 4 соответственно.
С помощью программы «Имитатор» примите решение о закрытии определенной точки.
Поступило предложение о том, чтобы нанять охранника для 2-й точки (т.к. большое число краж в месте ее расположения), зарплата которому составит 3110. При этом вероятность убытка уменьшится в два раза. Оцените эффективность данного предложения. - Имитационное моделирование в системе GPSS, 14 страниц
Показать заданияРешение выполнить в системе моделирования GPSS и приложить результат отчета и листинг программы.
В порту есть три причала: 1, 2 и 3 (Berth1, Berth2 и Berth3). В любой заданный момент времени к причалу 1 могут пришвартовываться 2 маленьких корабля или один средний. И причал 2, и причал 3 могут обслуживать один большой корабль, два средних или четыре маленьких.
Время между прибытиями кораблей равно 26 часам, оно распределено экспоненциально, маленькие, средние и большие корабли приходят в порт в пропорции 5:3:2 соответственно. Очереди для причалов основываются на том, что первый прибывший обслуживается первым, за исключением того, что ни маленький, ни средний корабль не может пришвартовываться к причалу, который уже ждет большой корабль, у средних кораблей больший приоритет, чем у маленьких кораблей.
Время разгрузки экспоненциально распределено со средним временем для маленьких кораблей – 15 часов, для средних – 30 часов, для больших – 45 часов. Время погрузки следующее:
· Время маленьких кораблей равномерно распределено в течение 24±6 часов.
· Время средних кораблей равномерно распределено в течение 36±10 часов.
· Время больших кораблей равномерно распределено в течение 56±12 часов.
Большие корабли могут причалить или отчалить от причалов 2 и 3 только во время прилива. 2 и 3. Отлив длится 3 часа, прилив – 10 часов.
Необходимо:
1. Запустить процесс моделирования для 500 дней.
2. Определить распределение транзитного времени для каждого типа кораблей.
3. Определить коэффициенты использования трех причалов. - Решение задачи по методу Монте-Карло (с использованием Excel), 4 страницы
Показать условиеКондитерская Карлик-нос снабжает своей продукцией несколько магазинов. Наряду со стандартным ассортиментом кондитерская выпекает некое фирменное печенье «Амброзия», являющееся ударным продуктом и определяющее имидж фирмы. Менеджер кондитерской просит о консультации, чтобы определить количество печенья, которое он должен выпекать каждый день. Из анализа накопившихся данных он оценивает спрос на печенье в среднем в 2500 упаковок по дюжине печений в день и стандартном отклонении спроса около 200 упаковок.
Каждая упаковка продается за 30 рублей, а стоит изготовителю 20 руб., что включает обработку и перевозку. Печенье, которое не удалось передать в магазины до конца дня, уценивается до 13 руб. и по этой цене обычно целиком продается на следующий день как товар более низкого сорта.
a. Сколько печенья Вы посоветуете печь ежедневно?
b. Какова при этом будет средняя величина прибыли (используйте метод Монте-Карло)?
c. Очевидно, что фирма несет издержки и в случае, если возник дефицит печенья, и в случае, если некоторая часть печенья осталась не раскупленной. Какую сумму в среднем он теряет на избытке и на недостатке печенья при оптимальном заказе (используйте метод Монте-Карло)?
d. Как изменятся ответы на вопросы а, и b и с, если стандартное отклонение увеличится до 300 упаковок? - Решение задачи по имитационному моделированию системы массового обслуживания в Excel, 6 страниц
Показать заданияИмеется n=4 вагонов, которые могут выходить из строя и требовать обслуживающего персонала.
Время нормального функционирования вагонов — СВ с экспоненциальным законом распределения.
Время ремонта (восстановления) вагона — СВ с экспоненциальным законом распределения.
Необходимо определить:
1. Стационарные вероятности системы.
2. Проверить правильность вычислений.
3. Вычислить среднее время числа простаивающих вагонов
4. Вычислить среднее число занятых рабочих
Может пригодиться: Лабораторные работы с применением GPSS World
Тема:
имитационное
моделирование
одноканальной модели системы массового
обслуживания.
Цель:
освоить реализацию имитационной модели
системы массового обслуживания в среде
табличного процессора Excel.
Теоретический
материал.
Табличные процессоры, в том числе Excel,
обладающие значительными вычислительными
возможностями широко используются и в
качестве инструмента для имитационного
моделирования.
Реализуем
в Excel
имитационную модель простейшей системы
массового обслуживания. Условия задачи
и моделирующий алгоритм взять из
предыдущей лабораторной работы.
Структура
(шаблон) расчетной модели может иметь
вид, представленный в таблице 1. Каждая
строка таблицы будет соответствовать
одному просчету (прогону) модели.
В соответствии с
заголовками:
-
столбец B содержит
номера заявок; -
в столбце С
генерируются случайные интервалы
времени между последующей и предыдущей
заявками;
Таблица
1.
Имитационная
модель одноканальной СМО
B |
C |
D |
E |
F |
G |
H |
I |
J |
номер заявки |
время между |
«модельное»
поступления |
время обслуживания |
начало обслуживания |
время выбытия |
время пребывания в системе |
время пребывания в очереди |
время простоя |
1 |
||||||||
…. |
||||||||
100 |
-
столбец D
формируется путем прибавления случайного
временного интервала к времени прибытия
предыдущей заявки; -
столбец Е представляет
собой случайный интервал времени
обслуживания заявки; -
столбец F
– время начала обслуживания. В случае,
если предыдущая заявка к моменту
поступления текущей уже закончила
обслуживаться, т.е. время поступления
текущей заявки больше времени выбытия
предыдущей заявки, начало обслуживания
совпадает со временем прибытия, иначе
– со временем выбытия предыдущей
заявки; -
столбец G содержит
«модельное» время выбытия заявки для
получения которого складываются время
начала обслуживания и продолжительность
обслуживания; -
в столбце H
определяется время пребывания заявки
в системе, которое равно разности между
временем выбытия и временем поступления
заявки; -
в столбце I
находится время пребывания заявки в
очереди, т.е. разность между временем
пребывания в системе и временем
обслуживания; -
столбец J
содержит время простоя системы в
ожидании очередной заявки.
Задание.
-
Изучить теоретический
материал. -
Реализовать в Excel
имитационную модель одноканальной СМО
с очередью. -
Вычислить
значения среднего времени простоя
системы в ожидании заявки, среднего
времени ожидания для заявки, которая
стоит в очереди. Для
проверки корректности модели просчитать
варианты с разными начальными условиями:
время между заявками существенно
превышает время обслуживания заявок;
время между заявками существенно
меньше времени обслуживания заявок;
время между заявками и время обслуживания
заявок одинаково. -
Модифицировать
программу, изменив экспоненциальный
закон распределения времени между
заявками на нормальное распределение. -
Вычислить
характеристики СМО для различных
значений числа заявок (30, 100, 200). Оценить
количество заявок, начиная с которого
увеличение несущественно влияет на
рассчитываемые интегральные характеристики
СМО. -
Получить
совокупность (»200)
возможных значений одной выходной
переменной (выборки), анализируя которую,
мы можем определить характеристики
этой случайной величины, сохранив
при этом полученные результаты на
специальном рабочем листе ЭТ. Для
полученной таблицы вычислить
статистические характеристики — среднее
арифметическое значение, стандартное
отклонение распределения, доверительный
интервал. -
Провести сравнительный
анализ возможностей имитационного
моделирования в рамках табличного
процессора и с помощью программы. -
Ответить на
контрольные вопросы.
Возможна ли
детерминированная модель системы
массового обслуживания?
Каким образом
можно включить в алгоритм ограничения
на длину очереди?
Привести примеры
реальных СМО, к которым применима
рассмотренная модель?
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
- #
- #
- #
- #
- #
- #
- #
- #
- #
- #
- #
Предложите, как улучшить StudyLib
(Для жалоб на нарушения авторских прав, используйте
другую форму
)
Ваш е-мэйл
Заполните, если хотите получить ответ
Оцените наш проект
1
2
3
4
5
Тема: Технология создания имитационной модели и работы с ней в среде Excel.
Цель:освоить технологиюимитационного моделирования с помощью табличного процессора. Рассмотреть способ оценки результатов полученных с имитационной стохастической моделью.
Теоретический материал. Имитационное моделирование – эффективный аппарат исследования стохастических систем. Динамика стохастических систем зависит от случайных факторов, а входные и выходные переменные стохастической модели описываются как случайные величины. Соответственно, результаты единственной реализации (прогона) модели будут реализациями случайных процессов, и не смогут объективно характеризовать изучаемый объект. Поэтому при исследовании стохастических процессов с помощью имитационного моделирования искомые величины находят как средние значения по данным большого числа реализаций (прогонов) модели.
Рассмотрим модель годовых затрат крупной компании на медицинское обслуживание своих служащих.
Допустим, что в компании в настоящий момент работает N человек, каждый из которых отчисляет в месяц на медицинское страхование mo у.е. При этом компания в течение года, несмотря на текучесть кадров, увеличивает число работников.
Количество служащих компании, пользующихся медицинской страховкой, будет увеличиваться на dN % каждый месяц, при росте индивидуальных потребностей в медицинском обслуживании на dzc % в месяц. Среднемесячная величина затрат на медицинское обслуживание одного работника в прошлом месяце составила zc у.е.
Величина индивидуального месячного взноса каждого служащего компании mo постоянна в течение всего года. Из допущений следует, что такая модель не содержит случайных факторов, следовательно, является детерминированной.
Используем для моделирования табличный процессор Excel. Заготовим шаблон, представленный в табл. 3.1.
Для того, чтобы сделать модель соответствующей реальностям нужно учесть влияние случайных факторов. Например, число работников будет изменяться некоторым случайным образом, а именно, варьировать вокруг растущего по месяцам среднего значения. Т.е. в каждом из месяцев количество работников может уменьшиться или увеличиться более чем на dN%. Индивидуальная потребность в медицинском обслуживании в отдельные месяцы может быть меньше ожидаемой, а в другие — больше.
Допустим, что в результате анализа ретроспективной информации, мы пришли к заключению, что месячные изменения количества служащих, охваченных медицинской страховкой, равномерно распределены на интервале между a % уменьшения и b % увеличения. Заметим, что, должно выполняться соотношение (a+b)/2 = dN.
Для моделирования этой ситуации будем использовать случайные числа, равномерно распределенные на интервале [а/100, b/100], получаемые по формуле: а/100+(b/100-а/100)* СЛЧИС().
Таблица 3.1.
Картограммы и картодиаграммы Картограммы и картодиаграммы применяются для изображения географической характеристики изучаемых явлений… |
Практические расчеты на срез и смятие При изучении темы обратите внимание на основные расчетные предпосылки и условности расчета… |
Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где… |
Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса… |
ТЕМА: Основные виды имитационного моделирования.
Имитационное моделирование в экономических задачах
с применением встроенных функций MS EXCEL.
Метод Монте-Карло и его реализация в MS EXCEL
Цель работы
1. Получить практические навыки имитационного моделирования эконо-
мических задач в EXCEL с использованием встроенных функций и ме-
тода Монте-Карло.
Пояснения к работе
Имитационное моделирование – это деятельность по разработке про-
граммных моделей либо реальных, либо гипотетических систем, выполнение
этих программ на компьютере, а также анализ результатов компьютерных экс-
периментов по исследованию поведения моделей. Отсюда следует, что ими-
тация – это компьютерный эксперимент. Отличие подобного эксперимента от
реального эксперимента состоит в том, что он проводится с моделью системы,
а не с самой системой.
Имитационное моделирование включает четыре основных направления:
1. Моделирование динамических систем.
2. Дискретно-событийное моделирование.
3. Системная динамика.
4. Агентное моделирование.
В рамках каждого из этих направлений развиваются свои инструмен-
тальные средства, которые позволяют упростить разработку модели и ее ана-
лиз.
Для имитационного моделирования в среде EXCEL является эффектив-
ным применение метода статистических испытаний Монте-Карло.
Задания
1. Предприниматель составил бизнес-план проекта сроком на n = 7 лет. Со-
гласно бизнес-плану, необходимые инвестиции в первый и второй годы
составляют COF
1
= 50000 руб. и COF
2
. = 80000 руб. В последующие
годы ожидаются доходы CIF
j
(j = 3, …, 7). Выполните моделирование и
рассчитайте чистую приведенную стоимость проекта:
,
1
1
1
1
n
j
R
COF
n
j
R
CIF
j
j
j
j
NPV
30
где требуемая доходность R = 15%, годовой доход: CIF
3
= 50000 руб.,
CIF
4
= 60000 руб., CIF
5
= 65000 руб., CIF
6
= 40000 руб., CIF
7
= 70000
руб.
2. Предприниматель составил бизнес-план проекта сроком на n = 7 лет. Со-
гласно бизнес-плану, необходимые инвестиции в первый и второй годы
составляют COF
1
= 50000 руб. и COF
2
= 80000 руб. В последующие го-
ды ожидаются доходы CIF
j
(j = 3, …, 7), которые являются случайными
величинами, распределенными по нормальному закону (среднее значе-
ние MCIF = 40000 руб., среднее квадратичное отклонение SCIF = 10000
руб.). Выполните моделирование и рассчитайте чистую приведенную
стоимость проекта:
,
1
1
1
1
n
j
R
COF
n
j
R
CIF
j
j
j
j
NPV
где требуемая доходность R = 15%.
Подготовительная часть
Для выполнения лабораторной работы необходимо повторить следую-
щие вопросы:
самостоятельное изучение обучающимися методических указаний по
выполнению данной лабораторной работы;
изучение теоретического материала по теме лабораторной работы;
подготовка формы отчета;
подготовка ответов на контрольные вопросы.
Работа в компьютерном классе
На персональном компьютере выполнить решения задач, указанных в
заданиях, с применением EXCEL.
Содержание отчета
Для отчета необходимо:
привести результаты расчетов;
объяснить применение конкретных средств EXCEL;
сделать выводы по полученным результатам.
31
1. Понятие имитационного моделирования.
2. Перечислите этапы имитационного моделирования.
3. Опишите виды имитационного моделирования.
4. Какие встроенные функции MS EXCEL применяются при имитационном
моделировании?
5. Какова сущность метода Монте-Карло?
6. Каким образом реализуется метод Монте-Карло в MS EXCEL?
Литература
1. Кобелев Н.Б., Половников В.А., Девятков В.В. Имитационное моделиро-
вание: Учебное пособие / Под общ. ред. д-ра экон. наук Н.Б. Кобелева. –
М.: КУРС: НИЦ Инфра-М, 2013. – 368 с. Режим доступа:
http://znanium.com/bookread2.php?book=361397
2. Лычкина Н. Н. Имитационное моделирование экономических процессов:
Учебное пособие / Н.Н. Лычкина. – М.: ИНФРА-М, 2012. – 254 с. Режим
доступа:
http://znanium.com/bookread2.php?book=233661
.
32
ЛАБОРАТОРНАЯ РАБОТА № 9
Цель работы
1. Получить практические навыки имитационного моделирования эконо-
мических задач с помощью метода Монте-Карло, реализованного в
EXCEL.
Пояснения к работе
Имитационное моделирование – это деятельность по разработке про-
граммных моделей либо реальных, либо гипотетических систем, выполнение
этих программ на компьютере, а также анализ результатов компьютерных экс-
периментов по исследованию поведения моделей. Отсюда следует, что ими-
тация – это компьютерный эксперимент. Отличие подобного эксперимента от
реального эксперимента состоит в том, что он проводится с моделью системы,
а не с самой системой.
Имитационное моделирование включает четыре основных направления:
5. Моделирование динамических систем.
6. Дискретно-событийное моделирование.
7. Системная динамика.
8. Агентное моделирование.
В рамках каждого из этих направлений развиваются свои инструмен-
тальные средства, которые позволяют упростить разработку модели и ее ана-
лиз.
Для имитационного моделирования в среде EXCEL является эффектив-
ным применение метода статистических испытаний Монте-Карло.
Рассмотрим использование метода Монте-Карло для расчета риска в
среде EXCEL.
Задание
1. Предположим, что мы хотим арендовать новый станок. Стоимость годо-
вой аренды станка 600000 руб. Договор нужно подписать на несколько
лет. Мы предполагаем, что современное оборудование позволит сэконо-
мить на трудозатратах, стоимости сырья и материалов, а также считаем,
материально-техническое обслуживание нового станка обойдется де-
шевле. Специалисты по оценке дали интервалы значений ожидаемой
экономии и годового объема производства (табл. 1).
Таблица 1
33
Экономия
на
материально-
техническом обслуживании, MS
от 10 до 20 руб. на единицу продукции
Экономия на трудозатратах, LS
от «-2» до 8 руб. на единицу продукции
Экономия на сырье и материа-
лах, RMS
от 3 до 9руб. на единицу продукции
Объем производства, PL
от 20000 до 40000 единиц продукции в год
Стоимость годовой аренды (точ-
ка безубыточности)
600000 руб.
Необходимо оценить рискованность этих инвестиций.
Подготовительная часть
Для выполнения лабораторной работы необходимо повторить следую-
щие вопросы:
самостоятельное изучение обучающимися методических указаний по
выполнению данной лабораторной работы;
изучение теоретического материала по теме лабораторной работы;
подготовка формы отчета;
подготовка ответов на контрольные вопросы.
Работа в компьютерном классе
На персональном компьютере выполнить решение задачи, указанной в
задании, с применением метода Монте-Карло в EXCEL.
Содержание отчета
Для отчета необходимо:
привести результаты расчетов;
объяснить применение конкретных средств EXCEL;
сделать выводы по полученным результатам.
Контрольные вопросы
1. Понятие имитационного моделирования.
2. Перечислите этапы и виды имитационного моделирования.
3. Какие встроенные функции MS EXCEL применяются при имитационном
моделировании?
4. Каким образом реализуется метод Монте-Карло в MS EXCEL?
34
Литература
1. Кобелев Н.Б., Половников В.А., Девятков В.В. Имитационное моделиро-
вание: Учебное пособие / Под общ. ред. д-ра экон. наук Н.Б. Кобелева. –
М.: КУРС: НИЦ Инфра-М, 2013. – 368 с. Режим доступа:
http://znanium.com/bookread2.php?book=361397
2. Лычкина Н. Н. Имитационное моделирование экономических процессов:
Учебное пособие / Н.Н. Лычкина. – М.: ИНФРА-М, 2012. – 254 с. Режим
доступа:
http://znanium.com/bookread2.php?book=233661
.
35
2. ДИСЦИПЛИНА «ПРОГРАММИРОВАНИЕ»
ТЕМА: Препроцессор. Директивы препроцессора. Объектно-
ориентированный анализ и объектно- ориентированное
программирование на управляемом С++. Visual Studio .NET:
интегрированная среда разработки
Цель работы
1. Владеть практическими навыками создания приложений на управляе-
мом языке программирования С++ в интегрированной среде разработки
Visual Studio .NET с использованием директив препроцессора.
2. Знать базовые средства языка программирования С++ и технологию со-
здания консольного приложения на объектно-ориентированном управ-
ляемом языке программирования С++ для решения стандартных задач.
Пояснения к работе
Назначение препроцессора – обработка исходного текста программы до
ее компиляции. Каждая директива препроцессора помещается на отдельной
строке и начинается с символа #. В конце директивы точка знак «;» не ставит-
ся.
Объектно-ориентированный подход к программированию обеспечивает-
ся механизмом классов. Основными свойствами объектно-ориентированного
программирования (ООП) являются инкапсуляция, наследование и полимор-
физм.
Платформа .NET имеет важные особенности:
каркас .NET Framework;
общеязыковая среда исполнения CLR;
возможность разработки приложения на многих языках программи-
рования, поддерживаемых платформой .NET;
инструментальные средства разработки приложений.
Платформа .NET объединяет средства разработки в единую интегриро-
ванную среду – Visual Studio .NET.
Для создания консольного приложения на языке программирования С++
необходимо выполнить следующие действия:
1. Выполнить команду File / New / Project…
2. Выбрать тип проекта Visual С++.
3. Выбрать CLR.
4. Выбрать шаблон CLR Console Application.
5. Задать имя проекта и его местоположение.
6. Щелкнуть кнопки Next и Finish.
36
7. Ввести код программы.
8. Сохранить файл – нажать CTRL + S.
9. Запустить программу на выполнение – нажать CTRL + F5.
Задания
1. Разработать программу на управляемом языке С++, в которой найти трех-
значные числа, удовлетворяющие условию: удалив старшую цифру и
умножив полученное число на 5, получаем исходное число.
2. Разработать программу на управляемом языке С++, в которой определить
трехзначные числа, обладающие следующим свойством: если от числа
отнять 2, то оно разделится на 2, если от числа отнять 3, то оно разделит-
ся на 3, а если из числа вычесть 4, то оно разделится на 4.
Подготовительная часть
Для выполнения лабораторной работы необходимо повторить следую-
щие вопросы:
самостоятельное изучение обучающимися методических указаний по
выполнению данной лабораторной работы;
изучение теоретического материала по теме лабораторной работы;
подготовка формы отчета;
подготовка ответов на контрольные вопросы.
Работа в компьютерном классе
На персональном компьютере ввести коды программ на управляемом
языке программирования С++ в интегрированной среде разработки Visual
Studio .NET.
Проверить работу программ при различных значениях параметров.
Содержание отчета
Для отчета необходимо:
привести код программы;
объяснить применение конкретных операторов в программе;
сделать выводы по полученным результатам.
Контрольные вопросы
1.
Препроцессор. Перечислите директивы препроцессора. Каково их
назначение?
37
2.
Охарактеризуйте интегрированную среду разработки Visual Stu-
dio.NET и работу в ней.
3.
Перечислите особенности платформы .NET.
4.
Что такое объектно- ориентированное программирование на С++?
5.
Объектная модель языка программирования С++. Основные свой-
ства объектно- ориентированного программирования.
6.
Работа с управляемым С++: общеязыковая среда исполнения CLR.
Какие службы она предоставляет для .NET-кода?
7.
Что такое метаданные?
8.
Что такое управляемый код?
Литература (имеется в достаточном количестве в Фундаментальной
библиотеке ННГУ)
1. Перова В.И. Программирование на С++ в среде Visual Studio .NET:
Учебное пособие. – Нижний Новгород: Изд-во Нижегородского гос-
университета, 2010. – 261 с. (в ФБ ННГУ имеется 61 экз.).
38
ЛАБОРАТОРНАЯ РАБОТА № 2
ТЕМА: Работа с управляемым С++: создание консольного
приложения на управляемом С++. Классы со сборкой мусора.
Классы-значения. Интерфейсы.
Цель работы
1. Владеть практическими навыками создания консольных приложений на
управляемом языке программирования С++ с использованием классов
со сборкой мусора и классов-значений.
2. Создание программ на языке программирования С++ с применением
интерфейсов.
Пояснения к работе
В основе объектно-ориентированного программирования лежит понятие
класса. Управляемые классы являются классами со «сборкой мусора». Они
определяются так:
ref class имя_класса // класс ссылочного типа
{
// Тело класса
};
Ключевое слово ref используется для явного указания, что объект созда-
ется в управляемой динамически распределяемой области памяти (куче).
Можно объявлять только указатель на класс ref, так как все типы со сборкой
мусора используют ключевое слово gсnew.
«Сборка мусора» – это когда управлением памятью занимается .NET, а
не программист в коде программы.
Классы-значения – это управляемые классы, но без сборки мусора. Они
полезны при определении объектов в стеке. Синтаксис определения класса-
значения имеет вид:
value class имя_класса // Класс ссылочного типа
{
// Тело класса
};
Поскольку в управляемом С++ поддерживается модель единичного насле-
дования классов, ключевое слово interface class (интерфейсный класс) позволя-
ет использовать технологию множественного наследования. Интерфейсы при-
меняются как полиморфные базовые классы.
Пример интерфейса:
39
interface class INameInterface
{
void usermetod();
};
Задания
1. Разработать программу на управляемом языке С++, в которой найти все
трехзначные числа, квадраты которых оканчиваются исходным числом.
2. Разработать программу на управляемом языке С++, в которой найти трех-
значные числа, удовлетворяющие условию: удалив старшую цифру и
умножив полученное число на 7, получаем исходное число. В программе
использовать два интерфейсных класса.
Подготовительная часть
Для выполнения лабораторной работы необходимо повторить следую-
щие вопросы:
самостоятельное изучение обучающимися методических указаний по
выполнению данной лабораторной работы;
изучение теоретического материала по теме лабораторной работы;
подготовка формы отчета;
подготовка ответов на контрольные вопросы.
Работа в компьютерном классе
На персональном компьютере ввести коды программ на управляемом
языке программирования С++ в интегрированной среде разработки Visual
Studio .NET.
Проверить работу программ при различных значениях параметров.
Содержание отчета
Для отчета необходимо:
привести коды программ;
объяснить применение конкретных операторов в программах;
сделать выводы по полученным результатам.
Контрольные вопросы
1. Что такое «сборка мусора»? Дайте описание класса ссылочного типа.
40
2. Перечислите правила, которых необходимо придерживаться при созда-
нии классов со сборкой мусора.
3. Что такое класс-значение?
4. Интерфейсы и их назначение.
Литература (имеется в достаточном количестве в Фундаментальной
библиотеке ННГУ)
1. Перова В.И. Программирование на С++ в среде Visual Studio .NET:
Учебное пособие. – Нижний Новгород: Изд-во Нижегородского госуни-
верситета, 2010. – 261 с. (в ФБ ННГУ имеется 61 экз.).
41
ЛАБОРАТОРНАЯ РАБОТА № 3
ТЕМА: Смешивание управляемого и неуправляемого кодов.
Использование объектов .NET в управляемых приложениях С++.
Управляемые указатели. Маршаллинг. Ввод / вывод
на управляемом С++
Цель работы
1. Разработка консольных приложений на управляемом С++, использую-
щих различные средства ввода/вывода.
2. Создание программ на языке программирования С++ с применением
объектов .NET и управляемых указателей.
Достарыңызбен бөлісу: