Цель: Используя компьютер и различные способы вычислений, вычислить значение числа с использованием цикла с параметром.
Оборудование: распечатка таблицы “Методы вычисления”, программа 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. В качестве домашнего задания я предлагаю самостоятельно рассмотреть метод прямоугольников (литература предлагается учащимся).
Литература
- Новожилов Б.В. Метод Монте-Карло. М.: Знание, 1966.
- Основы информатики и вычислительной техники. Пробный учебник для средних учебных заведений/ Кушниренко А.Г, Лебедев Г.В.: Просвещение, 1990.
- Информатика. №20, 1998 г./ Приложение к газете “Первое сентября”.