Розробка уроку

Тема: створення і опрацювання моделей на прикладах задач з економіки.

Мета:

Обладнання: комп'ютери з встановленими ОС і LibreOffice,Free Pascal (дана) інструкція.

Структура уроку

  1. Організаційний момент.
  2. Актуалізація опорних знань.
  3. Вивчення нового матеріалу.
  4. Інструктаж з ТБ.
  5. Закріплення вивченого матеріалу.
  6. Підбиття підсумків уроку.
  7. Домашнє завдання.

Хід уроку

1. Організаційний момент
Вітання з класом. Перевірка присутності і готовності учнів до уроку. Перевірка виконання домашнього завдання.

2. Актуалізація опорних знань

  1. За призначенням розрізняють моделі навчальні, дослідні, науково-технічні, імітаційні та інші. Які сфери застосування кожної з них?
  2. За фактором часу розрізняють моделі статичні й динамічні. У чому різниця між ними?
  3. За способом реалізації моделі поділяють на два види — матеріальні та інформаційні. У чому різниця між ними?
  4. Що таке комп’ютерна модель?
  5. Основні етапи комп’ютерного моделювання такі:
    1. Постановка задачі та її аналіз.
    2. Побудова інформаційної моделі.
    3. Розробка методу й алгоритму дослідження моделі.
    4. Розробка комп’ютерної моделі.
    5. Проведення комп’ютерного експерименту.
    У чому полягає їхня суть?
  6. За способом подання інформації інформаційні моделі поділяють на: словесні, графічні, структурні, алгоритмічні, розрахункові, спеціальні. Подайте приклади.

3. Вивчення нового матеріалу

Розглянемо задачі, пов’язані з бухгалтерськими (банківськими) розрахунками. Такі обчислення зручно виконувати у середовищі LibreOffice Calc або Free Pascal. Як і в інших випадках, побудова й дослідження математичної моделі означає здійснення таких кроків:

  1. Ґрунтовно проаналізувати умову задачі.
  2. Висловити припущення, на яких буде базуватися математична модель задачі.
  3. Визначити вхідні та вихідні (шукані) дані, об'єкти, розглядувані в умові задачі.
  4. Виділити істотні для розв'язання задачі властивості об'єктів.
  5. Описати властивості об'єктів за допомогою математичних співвідношень.
  6. Створити при потребі графічні образи побудованих залежностей.

Приклад 1. У банк вклали суму P під r відсотків річних на n років. Розрахувати кінцеву суму вкладу S при нарахуванні:

Об'єкти моделі:
P — сума вкладу;
r — ставка процента за рік;
n — період нарахувань (кількість років);
S — кінцева сума вкладу.

(1)    S = P · (1 + rn/100) — кінцева сума вкладу при нарахуванні простих процентів;
(2)    S = P · (1 + r/100)n — кінцева сума вкладу при нарахуванні складних процентів.

Розрахунки можна провести у середовищі LibreOffice Calc, створивши таблицю такого вигляду.

Формули записано у комірки D9 (прості проценти) і D14 (складні проценти). При внесенні у комірки D4:D6 у комірках D9 і D14 буде відображено результати обчислень.

Приклад 2. У банк вклали суму Р за ставкою r процентів річних. Розрахувати кінцеву суму вкладу для таких періодів часу: 0, 1/2, 1, 2, 3, і 4 роки при нарахуванні складних і простих відсотків. Побудувати відповідні графіки.

Запишемо у таблиці такі дані:

На основі табличних даних побудуємо графіки.

Зауваження. За час до року, не включаючи рік, кінцева сума вкладу при нарахуванні згідно з формулою (2) для складних відсотків є меншою ніж при нарахуванні згідно з формулою (1) для простих відсотків. Для періоду понад 1 рік все навпаки: кінцева сума вкладу при нарахуванні складних відсотків буде більшою ніж при нарахуванні простих відсотків.

Приклад 3 — задача «Банкiвська справа», яку пропонували учасникам олімпіади з інформатики, задача про оптимальне розташування фондів на фондовому ринку з метою отримання максимального зиску.

Сюжет. Молодий ломбардець Гуччо Бальйонi (герой серiї творiв французького письменника Морiса Дрюона) часто виконував таємнi доручення сучасних йому можновладцiв Францiї, Анґлiї та Італiї. Не маючи можливостi протягом трьох рокiв безпосередньо самому займатися справами, вiн вирiшив отримати зиск, вклавши грошi у справи паризьких банкiрiв. Виявилося, що розмiр винагороди (% зиску) рiзний у рiзних банкiрiв. Звичайно, чим бiльшу суму вiн дасть банкiру, тим бiльше отримає через 3 роки. І не менше, нiж дав банкiру. Але в кожного банкiра % зиску рiзний для рiзних сум. Нажаль, за розрахунками Гуччо, йому нiколи не отримати бiльше ніж 1000 лiврiв (середньовiчних французьких монет).

Завдання
Створити програму profit.*, яка домоможе молодому ломбардцю отримати якнайбiльшi статки.

Вхідні дані
Перший рядок файлу profit.in у вказаному порядку мiстить 2 натуральних числа:
m — кiлькiсть лiврiв, яку молодий Гуччо може використати для збагачення;
n — кiлькiсть паризьких банкiрiв.
Тут m і n не перевищують 100.
Для j в межах вiд 1 до m (j + 1)-ий рядок цього файлу мiстить послiдовнiсть n натуральних чисел. k-ий член цiєї послiдовностi — це кiлькiсть монет, яку отримає Гуччо через три роки вiд k-го банкiра, вiддавши йому j монет перед вiд'їздом.

Вихідні дані
Перший рядок вихiдного файлу profit.out має мiстити найбiльшу кiлькiсть лiврiв, яку може мати молодий ломбардець через 3 роки, використавши m лiврiв належним чином.
Другий рядок цього файлу має мiстити послiдовнiсть n невiд'ємних цiлих чисел. k-ий член цiєї послiдовностi — це кiлькiсть лiврiв, яку має дати Гуччо k-му банкiру, щоб отримати максимальний зиск вiд своїх капiталовкладень (потрiбно подати хоча б один з варiантiв розподiлу).

Приклад

profit.inprofit.out
3 10
1 1 6 2 2 5 2 1 3 3
2 4 7 8 3 7 8 4 8 5
7 10 12 10 4 9 11 6 13 7
14
0 0 1 2 0 0 0 0 0 0


Опис моделі

Запровадимо такі позначення:

bjk — кількість монет, які герой отримає за j монет від банкіра k (вхідні дані);

fjk — найбільша кількість монет, які герой отримає при найоптимальнішому розподілі j монет серед банкірів 1, 2, …, k.

Покладемо: b0k = f0k = 0.

Маємо:
fj1 = bj1 при j = 1, 2, …, m;
fj (k + 1) = max { f(jl) k + bl (k + 1) }l = 0, 1, 2, …, j при k = 1, 2, …, n – 1.

Те l, при якому досягається максимум, потрібно запам'ятати як елемент таблиці сj (k + 1), щоб потім скористатися при знаходженні оптимального розподілу монет на основі таких тверджень:

Розв'язання задачі мовою Pascal
(подавати з синхронним літературним перекладом розмовною мовою)

const n_max=101; m_max=101;
var b, {Кількість повернутих монет кожним банкіром}
    f, {Максимальний зиск якщо використано перші банки}
    q:                {Капіталовкладення у перші n банків}
       array[1..n_max,0..m_max] of word;
    x: array[1..n_max]          of word;      {У кожен банк}
    o: text;  i,j,k,l,m,n,p: word;                    BEGIN
assign(o,'PROFIT.IN');  reset(o);  readln(o,m,n);
for i:=1 to n do begin b[i,0]:=0;  x[i]:=0 end;
for j:=1 to m do for i:=1 to n do read(o,b[i,j]);  close(o);
for j:=0 to m do begin f[1,j]:=b[1,j]; q[1,j]:=j end;
for i:=2 to n do for j:=0 to m do                     begin
p:=0;  for k:=0 to j do if (f[i-1,j-k]+b[i,k])>p then begin
p:=f[i-1,j-k]+b[i,k];                   l:=k;           end;
f[i,j]:=p;               q[i,j]:=l;                     end;
p:=f[n,m];  i:=n;
repeat x[i]:=q[i,m];  m:=m-x[i];  dec(i)
 until m=0;
assign(o,'PROFIT.OUT');  rewrite(o);  writeln(o,p);
for i:=1 to n-1 do write(o,x[i],' '); writeln(o,x[n]);
                                               close(o) END.

4.Інструктаж з ТБ
5. Закріплення вивченого матеріалу

Створити комп'ютерну модель такої: 100 000 гривень поклали на місячний депозит під 20% річних. Якою буде кінцева сума через 3 місяці, якщо таку операцію здійснювали тричі щомісяця? Результат записати з назвою Ваше прізвище теку, вказану вчителем.

6. Підбиття підсумків уроку
Виставлення оцінок.

7. Домашнє завдання

  1. Вивчити матеріал уроку.
  2. Створити комп'ютерні моделі прикладів 1 і 2 у середовищі Free Pascal.
  3. У середовищі LibreOffice Calc підрахувати матрицю f для прикладу вхідних даних з умови задачі «Банкiвська справа». Порівняти своє розв'язання з демонстраційним.

Текст упорядкувала Бицюра Надія Михайлівна, вчитель СШ № 31 Дніпровського району міста Києва, під час виконання випускної роботи на курсах підвищення кваліфікації з 06.10.2014 до 25.10.2014.