Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Абрамов С.А., Гнездилова Г.Г., Капустина Е.Н., Селюн М.И. Задачи по программированию [pdf]

.pdf
Скачиваний:
734
Добавлен:
02.05.2014
Размер:
6.04 Mб
Скачать

2

dx

 

 

 

 

9

dx

 

π

3

а) 1

;

 

 

б)

1

;

в)

sin xdx;

x2

 

 

x

 

 

 

 

 

 

 

 

 

 

0

г) 1

dx

 

;

д)

8

3 xdx.

 

 

1+ x

2

 

 

0

 

 

 

0

 

 

 

 

742. Дано действительное число ε . Вычислить интегралы с точностью ε . В данной задаче вычисление с точностью ε означает

следующее. Отрезок интегрирования разбивается на ni

равных частей

и строится сумма Sn , которая является приближенным значением

 

 

i

 

 

 

 

 

 

 

 

 

 

 

 

интеграла. Если выполняется условие

 

Sn

Sn

 

< ε ,

 

 

Sn

 

 

считается

 

 

 

 

 

 

 

 

i + 1

i

 

 

 

 

i+ 1

 

 

значением интеграла с точностью ε . (Здесь,

ni <

 

ni+ 1

(i=1, 2, ...).)

а) 1.2 3

dx

;

 

б) 3

4 + x2 dx;

 

 

 

0

x +

1

 

 

0

 

 

 

 

 

 

 

 

 

в)

д)

ж)

и)

л)

н)

6

 

dx

 

 

 

 

0

 

;

 

 

 

 

 

 

1+ x4

 

 

π

/ 4

 

 

dx

 

 

 

 

 

;

1

0.25sin

2

 

0

 

x

 

π

cos x

dx;

 

 

 

 

 

 

π

/ 2

x

 

 

 

 

10 (x 5)2 (10 x)dx;

0

1 e2 x sin(2x2

+

1)dx;

0

 

 

 

 

 

 

 

1

 

dt

 

 

 

 

 

 

 

 

;

(1+ t

2

)(4

+

t

2

0

 

 

)

г) 2 e

2 cos π x dx;

 

0

 

4

е)

π / 6

tgx dx;

 

0

 

 

з)

7

e x

 

dx;

x

 

 

1

 

 

к) π

1+ cos2 x dx;

 

0

 

 

 

 

0.56

 

 

м)

 

arccose3 3x dx;

 

0.2

 

 

о) 5 ex sin x2 dx;

0

 

 

 

 

п)

1

ln 1 dt.

 

 

 

 

 

 

0

t

 

 

 

 

Если удается с помощью формулы Ньютона—Лейбница найти

точное значение интеграла, то полезно сравнить с ним результат

приближенного вычисления.

 

 

 

 

743. Вычислить длину эллипса по формуле

S =

 

4aπ / 2

1

ε 2 sinϕ dϕ , a = 30, b = 20 (a и b – полуоси эллипса),

 

 

 

0

 

 

ε

2

=

 

a2

b2

.

 

 

 

a

2

 

 

 

 

 

 

744. Вернуться к задаче 738. Найти приближенные значения интегралов функций y = f (x) , определенных в а) и б) с помощью уравнений вида F (x, y) = 0. Первая функция интегрируется на отрезке

[–1, 0], вторая на отрезке [1, 2]. Вычисление интеграла следует

начинать, разделив отрезок интегрирования на 5 частей. Затем уточнить значение интеграла, уменьшая шаг вдвое. Вычисление проводить с точностью 0.001. Значения функции вычислять с точностью 0.00001.

745. Дано действительное положительное число ε . Вычислить с

точностью ε

площадь фигуры между дугами двух кривых:

а)

y =

sin x2

+

2, y =

ex2 ;

б)

y =

2x2 ,

y =

cos x2

+ 1.

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

746. Решить дифференциальное уравнение y′ = f (x, y) . После уравнения в скобках записаны исходные данные для решения: x0

начальное значение аргумента, y0 – начальное значение функции от x0 , отрезок, на котором решается уравнение, h – шаг.

 

 

 

 

 

 

 

 

y

 

 

(x0 =1.7, y0 =5.3, [1.7, 5.2], h=0.15);

а)

y

=

x + cos π

 

 

 

 

y

 

 

x

 

e2

 

(x0 =1.8, y0=4.5, [1.8, 4.6], h=0.1);

б)

=

2 +

x + y

 

 

 

в)

y′ =

3 x2

+ 3y

 

(x0 =3, y0=5, [3, 11.4], h=0.3);

 

y

 

 

y

 

 

 

 

 

 

 

 

1) (x0 =1, y0=0.5, [1, 0.6], h=0.005);

г)

=

 

x ( y ln x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

y

 

д)

y

=

2x +

sin x (x0 =0, y0=1, [0, 1], h=0.1);

 

е)

y′ =

 

 

x +

 

 

y

 

(x0 =0, y0=0, [0, 1], h=0.1);

ж)

y′ =

 

x + 3 3 +

y 2 (x0 =0, y0=0, [0, 1], h=0.1);

з) y′ =

и) y′ =

к) y′ =

л) y′ = м) y′ =

н) y′ =

y

(x0 =0, y0=1, [0, 1], h=0.01);

ex + y 2

x y (x0 =0, y0=0, [0, 1], h=0.05);

xy

 

1x2 (x0 =0, y0=1, [0, 0.5], h=0.05);

2xy (x0 =0, y0=1, [0, 1], h=0.025);

2x

3y (x0 =0, y0=0, [0, 1], h=0.1);

1+

x3 + y (x0 =0.8, y0=3.8, [0.8, 5.0], h=0.15).

§23. Случайные числа

747.Если записать результаты серии бросаний монеты, то может получиться, например, последовательность:

орел, решка, решка, орел, решка, орел, орел, орел, решка, ...

Обозначив выпадение решки единицей, а выпадение орла – двойкой, получим числовую последовательность

2, 1, 1, 2, 1, 2, 2, 2, 1, ...

Протокол серии независимых испытаний, каждое из которых может иметь один из n равновероятных исходов (в предыдущем номере n=2), удобно изображать последовательностью чисел 1, 2, ..., n – номеров исходов. При n=6 (таково, например, число исходов при бросании игральной кости) может получиться

5, 4, 2, 1, 4, 3, 6, 6, 5, 2, 5, 6, 1, 3, ...

Подобного рода последовательности на практике могут быть использованы для подбора исходных данных для опытной проверки некоторой гипотезы, многократного принятия решения в повторяющейся сложной ситуации, моделировании различных физических явлений (например, броуновского движения) и т. д. Некоторые языки программирования позволяют включать в программы обращения к так называемым датчикам случайных чисел – операторам или функциям, вырабатывающим при каждом обращении очередной член некоторой числовой последовательности, похожей на рассмотренные выше. Обычно датчики устроены так, что членами последовательности оказываются действительные числа r0, r1, ..., принадлежащие интервалу (0,1). В практических применениях большинства таких датчиков последовательность r0, r1, ... может рассматриваться как последовательность равномерно распределенных в интервале (0, 1) независимых случайных чисел, т. е. можно считать,

что какой бы интервал (а, b) внутри (0, 1) мы ни взяли, при k ≥ 0 вероятность того, что rk попадает в (а, b), не зависит от значений других членов последовательности и равна длине b-a этого интервала. Как правило, числа r0, r1, ... при работе с датчиками образуются вовсе не случайно, а по определенному закону, лишь достаточно хорошо имитирующему случайность, поэтому правильнее говорить о псевдослучайных числах. Однако для краткости приставку «псевдо» часто опускают, как и упоминание о независимости чисел, и говорят о последовательности случайных чисел или случайной последовательности, уточняя, при необходимости, характер распределения. Так будем поступать и мы.

Предполагается провести следующие эксперименты с датчиком случайных чисел:

а) Получить с помощью датчика 20 чисел и оценить на глаз их «случайность» (проконтролировать отсутствие заметных закономерностей).

б) Получить с помощью датчика 300 чисел r0, r1 ..... , r299 и оценить по ним равномерность распределения: разбить интервал (0, 1) на 10 интервалов равной длины, построить столбчатую диаграмму (гистограмму) и секторную диаграмму, показывающие, сколько чисел из последовательности r0, r1 ....., r299 попало в каждый интервал.

748. Если готового датчика случайных чисел (см. предыдущую задачу) в распоряжении программиста нет, то он может самостоятельно определить датчик в программе. Не вдаваясь в довольно сложную теорию, опишем один из таких датчиков (см. [35]). Зафиксируем некоторые натуральные a, c, m, s0 такие, что m – наибольшее из них. Определим последовательность неотрицательных целых чисел s0, s1,… следующим правилом: sn равно остатку от