Меню
Разработки
Разработки  /  Информатика  /  Уроки  /  10 класс  /  Открытый урок информатики "Построение моделей при решении содержательных задач в среде Паскаль"

Открытый урок информатики "Построение моделей при решении содержательных задач в среде Паскаль"

Построение математической, информационной, компьютерной моделей при решении содержательной задачи с выводом результата в виде диаграммы. Среда программирования - PascalABC.
29.11.2009

Описание разработки

 Построение математической, информационной, компьютерной моделей при решении содержательной задачи с выводом результата в виде диаграммы. Среда программирования - PascalABC.

Открытый урок информатики

Содержимое разработки


ОТКРЫТЫЙ УРОК НА ТЕМУ:

«Построение моделей при решении содержательных задач в среде паскаль »

Учитель информатики

Гилязова Н.Д.


Класс: 11В (12 человек)

Цель урока: - повторить, обобщить и систематизировать знания по теме «Программирование на языке Pascal ABC»;

Задачи урока:

Воспитательная - развитие познавательного интереса, логического мышления, воспитание информационной культуры

Учебная - обобщение, повторение, систематизация знаний по теме.

- закрепление знаний по указанной теме;

- отработка практических навыков по анализу результатов моделирования ситуации.

Развивающая - развитие алгоритмического мышления, памяти, внимательности.


Формы урока: (комбинированная)

- лекционная;

- фронтальная (выполнение общих заданий).


План урока

  1. Организационная часть 2 мин

  2. Постановка цели урока 3 мин

  3. Обобщение материала 20 мин

  4. Выполнение общих заданий 15 мин

  5. Постановка домашнего задания 2 мин

  6. Заключительное слово учителя. Подведение итогов урока 3 мин


Ход урока (1 час)

  1. Организационная часть – 2 мин.

Включает в себя приветствие, проверку отсутствующих.


  1. Постановка цели урока – 3 мин.

- Ребята, тема нашего занятия «Построение моделей при решении содержательных задач в среде паскаль».

  1. Обобщение материала – 20 мин.

- Для обобщения материала по теме «Построение моделей при решении содержательных задач в среде паскаль» мы повторим выкладки этапы решения задач.



Этапы решения задач.

Первый этап – постановка задачи и ее анализ. На этом этапе определяются исходные данные, цель решаемой задачи, вид получаемых результатов.

Второй этап – математическая формулировка. На этом этапе происходит составление математической модели, т.е. описание задачи с помощью математических формул.

Третий этап – формализации задачи: (выбор метода решения). На этом этапе выбирается способ (порядок) решения задачи.

Четвертый этап - составление алгоритма на основе выбранного метода.

Пятый этап – написание программы на языке программирования.

Шестой этап – Отладка программы.

Седьмой этап – анализ результатов.


На сегодняшнем занятии я хочу предложить вам решить содержательную задачу: выполнить постановку задачи, построить математическую, информационную и компьютерную модели, проанализировать полученные результаты.


Условие задачи: Цех по ремонту бытовой техники имеет ежедневно прибыль Р, с которой платит налог 7%. Из оставшейся доли прибыли 30% идет на развитие производства, а остальное – на заработную плату 8 работникам. Какова среднемесячная зарплата работника?


Анализируем задачу. По условию нам дана ежедневная прибыль в течении месяца, исходя из которой надо определить ежедневную зарплату 1-го работника.

Несложно понять, что значения прибыли можно хранить в одномерном массиве (ОМ) или в файле данных. Мы рассмотрим задачу с использованием ОМ.

Поэтому введем обозначение P[n], где n – количество дней в месяце.

Заполнять ОМ будем случайными числами на интервале от 1000 до 10000 (рублей).

Анализируем задачу далее.

7% (0,07) – налог.

30% (0,3) – доля прибыли на развитие производства от прибыли без налога.

Введем промежуточные величины и обозначим их.

PN = P[i] * 0,07 – налог за день (в рублях).

PBN = P[i] - PN – прибыль за день без налога за день (в рублях).

Очевидно, что эти вычисления можно оптимизировать, этим исключить промежуточную переменную PN. Таким образом, имеем:

PBN = P[i] - P[i] * 0,07

Продолжим выделение промежуточных величин.

PP = PBN * 0,3 доля от прибыли без налога на развитие производства за день (в рублях).

PZ = PBN - PP – доля от прибыли без налога на зарплату 8-ми работникам за день (в рублях).

Очевидно, что и эти вычисления можно оптимизировать, этим исключить промежуточную переменную PP. Таким образом, имеем:

PZ = PBN - PBN * 0,3

Продолжим выделение промежуточных величин.

ZN = PZ / 8– ежедневная заработная плата 1 работника за день (в рублях).

Итак, мы обозначили все существенные величины, необходимые для расчета заработной платы 1-го работника за день (в рублях). Подчеркну, что вычисления этих переменных необходимо выполнить для каждого дня месяца

Теперь осталось обозначить заработную плату 1-го работника за месяц (n дней).

Z= ZN + ZN + … + ZN




Переходим к построению математической модели, что мы уже фактически сделали при анализе задачи


Для каждого дня месяца выполним вычисления по формулам:

PBN = P[i] - P[i] * 0,07

PZ = PBN - PBN * 0,3

ZN = PZ / 8


При этом параллельно накапливаем получаемые зарплаты:

Z= ZN + ZN + … + ZN

Математическая модель, т.е. описание задачи с помощью математических формул построена.


Осуществляем выбор метода и порядка решения задачи. Воспользуемся методами вычислений и накапливания суммы.

Переходим к построению информационной модели, т.е. составляем блок-схему алгоритма (БСА) на основе выбранных методов Учитываем, что мы работаем с массивом, следовательно, используем циклы.


  1. Выполнение общих заданий – 20 мин.

Далее учащимся дается время построения БСА (5 мин). Затем по желанию учащийся рисует её на доске.

















Переходим к построению компьютерной модели, т.е. написанию программы на языке программирования Паскаль.


ПРОГРАММА «ЗАРПЛАТА»

program zarplata;

uses crt,graphabc;

const n=30;

type mas = array[1..n] of real;

var p: mas;

i,a,zn1,z1: integer;

pbn,pz,zn,z: real;

begin

setwindowwidth(700);

setwindowheight(500);

randomize;

writeln(' Исходный массив ежедневных прибылей: ');

writeln;

for i:=1 to n do

begin

p[i]:=1000+random*(10000);

write(p[i]:10:2);

end;

writeln;

writeln;

writeln(' Ежедневная зарплата работника равна: ');

writeln;

setpenwidth(2);

line(20,400,640,400);

a:=30;

for i:=1 to n do

begin

pbn:= p[i]- p[i]*0.07;

pz:=pbn-pbn*0.3;

zn:=pz/8;

write(zn:10:2);

z:=z+ zn;

zn1:=trunc(zn/10);

setbrushcolor(random(16777215));

rectangle(a,400-zn1,a+15,400);

a:=a+20;

end;

writeln; writeln;

//z1:=trunc(z/10);

//rectangle(a,600-z1*10,a+15,600); a:=a+5;

writeln(' Ежемесячная зарплата работника ',z:5:2) ;

writeln; writeln;

writeln(' ДИАГРАММА ЕЖЕДНЕВНОЙ ЗАРПЛАТЫ РАБОТНИКА ');

End.






















Отладить задачу. Для этого нужны конкретные данные в массиве прибылей. Поэтому отладку можно проводить для ОМ размерностью до 10 элементов.


Тесты для отладки программы:

Массив

З/п задень

З/п за месяц

2000 2500 4000 1250 3400

162,75 203.44 325.50 101.72 276.68

1070.08

1720 666 5875 8456 2450

139.97 54.20 478.08 688.11 199.37

1559.71

Как вы знаете, анализ результатов – очень важный и нужный этап работы над задачей. В ходе этого этапа, возможно потребуется пересмотр самого подхода к постановке и решению задачи и возврат к первому этапу. Это возможно, когда полученные результаты не отражают свойства объекта или явления, сформулированные в постановке задачи (например, они недопустимы по знаку, типу, использованы не те алгоритмические структуры).


V. Домашнее задание:

  1. Переделать программу, таким образом, чтобы данные об ежедневной прибыли вводились из файла данных, а результат – ежемесячная зарплата – работника сохранялась в файле данных.


VI. Итог урока.

Подведение итога урока. Выставление оценок.

-80%
Курсы дополнительного образования

Создание динамических веб-страниц с помощью PHP и MySQL

Продолжительность 72 часа
Документ: Cвидетельство о прохождении курса
4000 руб.
800 руб.
Подробнее
Скачать разработку
Сохранить у себя:
Открытый урок информатики "Построение моделей при решении содержательных задач в среде Паскаль" (0.09 MB)

Комментарии 3

Чтобы добавить комментарий зарегистрируйтесь или на сайт

Наталия, 06.04.2012 16:22
Большое спасибо, материал очень интересный.
    Хорошая разработка,
Лариса, 29.11.2011 15:25
Спасибо за все все материалы!
   Всем удачи и хороших умных учеников!
Светлана, 03.12.2009 20:15
Класно что есть такой сайт!