Цель: Используя компьютер и различные способы вычислений,
вычислить значение числа с
использованием цикла с параметром.
Оборудование: распечатка таблицы “Методы вычисления”, программа Turbo Pascal
План
Ход урока
1. Организационный момент. Раздать
учащимся заготовку таблицы
Методы
вычисления
Значение N |
10 |
25 |
50 |
100 |
200 |
500 |
1000 |
2000 |
5000 |
10000 |
Ряд Тейлора |
|
|
|
|
|
|
|
|
|
|
Метод Монте-Карло |
|
|
|
|
|
|
|
|
|
|
2. Ряд Тейлора
Известно, что разложение функции arctg x в ряд Тейлора имеет вид:
Если х=1, arctg 1 =
/4 –
и, значит,
Значит, наша задача сводится к вычислению
суммы членов последовательности.
Учитель: Как вы думаете, от чего будет зависеть точность вычисления числа ?
Ответ: Вычисления с помощью этого ряда будут тем точнее, чем больше членов
ряда будет задействовано.
Пусть I - номер члена ряда (1, 2, 3, …, n)
Учитель: Давайте найдем закономерность в записи дробей. Какое число стоит в
числителе у всех этих дробей?
Ответ: Число 1.
Учитель: Что вы можете сказать о числах, стоящих в знаменателе дробей?
Ответ: В знаменателе стоят нечетные числа 3, 5, 7, …
Учитель: Какая формула будет для нечетных чисел?
Ответ: 2i+1.
Учитель: Но тогда мы пропустим первый член ряда – 1.
Ответ: Для вычисления суммы мы возьмем первое значение S=1.
Учитель: От чего будет зависеть знак у членов ряда Тейлора?
Ответ: От переменной I. Если I – четное, то оставить дробь без изменения,
иначе изменить знак на противоположный.
PROGRAM
METOD1;
VAR S,P,F:
REAL; I,N:INTEGER;
BEGIN WRITE (‘ВВЕДИТЕ КОЛИЧЕСТВО ЧЛЕНОВ РЯДА
ТЕЙЛОРА?‘);READLN(N);
S:=1;
FOR I:=1
TO N DO
BEGIN
F:=1/(2*I+1);
IF I MOD
2=0 THEN F:=F ELSE F:=-F;
S:=S+F;
END;
P:=4*S;
WRITELN(‘ЗНАЧЕНИЕ ЧИСЛА Pi РАВНО: ‘,P:7:6);
END.
Скомпилировать
программу и выполнить вычисления, результаты занести в таблицу.
Значение N |
10 |
25 |
50 |
100 |
200 |
500 |
1000 |
2000 |
5000 |
10000 |
Ряд Тейлора |
3,232316 |
3,103145 |
3,161199 |
3,151493 |
3,146568 |
3,143589 |
3,142592 |
3,142092 |
3,141793 |
3,141693 |
3. Метод Монте-Карло
Свое название этот метод получил от города Монте-Карло в княжестве Монако, знаменитого своими игорными
домами. Дело в том, что метод основан на применении случайных чисел, а одним из
простейших приборов, генерирующих случайные числа, может служить рулетка.
Впрочем, можно получить случайные числа и из дождевых капель.
Для опыта приготовим кусок картона, нарисуем
на нем квадрат и впишем в него четверть круга. Если такой чертеж некоторое
время подержать под дождем, то на его поверхности останутся следы капель.
Подсчитаем число следов от капель внутри квадрата NKV и внутри четверти круга
NKR.
Интуитивно представляется, что их отношение
будет приближенно равно отношению площадей этих фигур, так как попадание капель
в различные места чертежа равновероятно, тогда
Вместо следов от капель можно рассмотреть
случайные числа от 0 до 1 (Рисунок 1).И тогда каждому следу поставим в
соответствие два случайных числа вдоль осей Ох и Оу.
Учитель: Какая функция языка программирования Паскаль поможет нам выбрать
случайные числа?
Ответ: RANDOM.
Мы будем сами задавать количество случайных
чисел (NKV). Но как же подсчитать количество капель, попавших в четверть круга.
Воспользуемся для этого уравнением окружности: x2 + y2 =
r2.
Учитель: Чему равно значение r?
Ответ: r=1
Учитель: Как вы думаете, при каком условие случайное число попадет в четверть
круга?
Ответ: Если x2 + y21, то
nkr=nkr+1.
PROGRAM
METOD2;
VAR X,Y,P:
REAL; I,NKV,NKR:INTEGER;
BEGIN RANDOMIZE;
WRITE (‘ВВЕДИТЕ КОЛИЧЕСТВО КАПЕЛЬ В
КВАДРАТЕ?‘);READLN(NKV);
NKR:=0;
FOR I:=0
TO NKV DO
BEGIN
X:=RANDOM;
Y:=RANDOM;
IF
X*X+Y*Y<=1 THEN NKR:=NKR+1;
S:=S+F;
END;
P:=4*NKR/NKV;
WRITELN(‘ЗНАЧЕНИЕ ЧИСЛА Pi
РАВНО: ‘,P:7:6);
END.
Набрать и скомпилировать программу, выполнить
вычисления, результаты внести в таблицу.
Примерный вариант ответом может быть такой:
Значение N |
10 |
25 |
50 |
100 |
200 |
500 |
1000 |
2000 |
5000 |
10000 |
Ряд Тейлора |
4,000000 |
2,560000 |
3,520000 |
3,280000 |
3,100000 |
3,176000 |
3,204000 |
3,190000 |
3,139200 |
3,135600 |
Учитель: Почему такой разброс значений? И почему ответы у учащихся не
совпадают?
Ответ: Так как при вычисление использовалась функция RANDOM.
Для вычисление числа ? существуют и другие
методы: метод прямоугольников, метод “падающей иголки”.
4. В качестве домашнего задания я предлагаю
самостоятельно рассмотреть метод прямоугольников (литература предлагается
учащимся).