Начальное значение: 27.0
k= 3
Задача 4.3. Используя формулу для элементов последовательности ai, составить программу для вычисления суммы n элементов этой последовательности.
Дано:
Решение.
1. Анализ задачи.
В этой задаче элементы последовательности вычисляются рекуррентно, поэтому соотношение:
Пусть Si - сумма i первых элементов последовательности.
Тогда
Начальные значения:
Основные формулы:
Исходные данные:
n =3 (тест),
n =7 (рабочий вариант).
2. Тест для отладки программы:
3. Блок - схема:
![]() |
4. Программа:
Program Sum; { Вычисление суммы заданного числа элементов
последовательности }
Var S, a: real; { Описание переменных }
i, n: integer;
Begin
WriteLn(' Введите n');
ReadLn(n); { Ввод числа элементов последовательности}
WriteLn(' Введено n=',n:4); { Вывод n }
S:= 0.0;
a:= -1.0;
for i:= 1 to n do begin
a:= -a / i; { Вычисление текущего элемента последовательности}
S:= S +a; { и суммы }
end;
WriteLn;
WriteLn(' сумма S=',S:10:4); { Вывод суммы }
End. { Конец программы}
5. Вид печати:
Введено n= 3
сумма S=0.6667
Задача 4.4. Разработать программу, которая определяет первый отрицательный элемент последовательности значений функции при изменении
в интервале
с шагом
.
Дано:
Решение.
1. Анализ задачи.
Для вычисления требуемого результата необходимо последовательно вычислять значение функции и анализировать его знак. Для конкретных вариантов исходных данных может оказаться, что такого элемента в заданной последовательности нет. Следовательно, после завершения цикла необходимо вывести соответствующее сообщение.
Обозначим: a - начальное значение x; b - конечное значение x; h - шаг изменения x; .
Тогда: a = 2; b = 5; h = 0,5.
2. Тест для отладки программы:
.
.
.
- первый отрицательный элемент последовательности.
3. Блок - схема
4. Программа:
Program Otr; { Вычисление 1-го отрицательного э-та пос-ности}
Var x, y, a, b, h: real; { Описание переменных }
Begin { Начало основного блока }
Write('Введите a,b.h');
ReadLn(a,b,h); { Ввод исходных данных }
x:=a-h;
repeat x:= x +h;
y:= sin(x); { Вычисление y }
until (x+h>b) or (y<0); {комбинированное условие выхода из цикла}
if y<0 then WriteLn('y=',y:9:6,' при x=',x:3:1)
else WriteLn('Элемент не найден');
End. { Конец программы}
5. Вид печати:
y=-0.350783 при x=3.5
Задача 4.5. Разработать программу, определяющую сумму ряда для значения
с точностью
Решение.
1. Анализ задачи.
Из соответствующих разделов математики известно, что суммой ряда называется предел, к которому стремится последовательность частичных сумм данного ряда, если он существует. Если такой предел существует, то ряд называется сходящимся, в противном случае - расходящимся. Также известно, что знакопеременный ряд сходится, если , где
и
- соответственно n -й и n +1-й члены ряда.
Кроме того, доказано, что , где
- сумма ряда, а
- сумма n членов ряда.
Следовательно, для получения требуемого результата будем накапливать частичную сумму элементов ряда, пока очередной член ряда не станет меньше заданной погрешности: .
Имеем .
Тогда . Отсюда следует, что
2. Тест для отладки программы:
3. Блок - схема
![]() |
4. Программа.
Program Sum_R;
Var
S,r,x,eps:real; { Описание переменных }
Begin
WriteLn(' Введите x и eps');
Readln(x,eps); { Ввод исходных данных }
If abs(x) > 1 Then {если x>1, то ищем сумму ряда}
Begin
S:=1;
r:=1;
While abs(r) > eps do
Begin
r:=-r/x;
S:=S+r;
end;
WriteLn(' При x=',x:3:1,' S=',S:7:5)
End
else Write('Ряд расходится ');
END. { Конец программы}
5. Вид печати:
При x=6.3 S=0.86302
Варианты задания
Задача 4.1. Составить программу для табулирования функций и
при изменении
от
до
с шагом
. В первой колонке печатать
, во второй -
, в третьей -
. Исходные данные приведены в табл. 4.1.
Таблица 4.1
Вариант | ![]() | ![]() | ![]() | ![]() | ![]() |
1. | ![]() | ![]() | 0,3 | 0,36 | 0,01 |
2. | ![]() | ![]() | 0,12 | 0,22 | 0,02 |
Продолжение таблицы 4.1 | |||||
Вариант | ![]() | ![]() | ![]() | ![]() | ![]() |
3. | ![]() | ![]() | 0,1 | 3,6 | 0,5 |
4. | ![]() | ![]() | 1,2 | 2,2 | 0,2 |
5. | ![]() | ![]() | 0,3 | 1,1 | 0,1 |
6. | ![]() | ![]() | 0,5 | 1,5 | 0,2 |
7. | ![]() | ![]() | 0,1 | 0,15 | 0,01 |
8. | ![]() ![]() | ![]() | 0,5 | 0,7 | 0,02 |
9. | ![]() | ![]() | 1,5 | 1,6 | 0,01 |
10. | ![]() | ![]() | 2,0 | 2,7 | 0,1 |
11. | ![]() | ![]() | -1,5 | 1,0 | 0,5 |
12. | ![]() | ![]() | -1,2 | 0,4 | 0,2 |
13. | ![]() | ![]() | 0,2 | 0,7 | 0,1 |
14. | ![]() | ![]() | 0,1 | 0,8 | 0,1 |
15. | ![]() | ![]() | 0,3 | 1,2 | 0,1 |
Продолжение таблицы 4.1 | |||||
Вариант | ![]() | ![]() | ![]() | ![]() | ![]() |
16. | ![]() | ![]() | 1,5 | 2,5 | 0,1 |
17. | ![]() | ![]() | 3,0 | 3,9 | 0,1 |
18. | ![]() | ![]() | 0,2 | 0,28 | 0,01 |
Задача 4.2. Элементы последовательности заданы рекуррентно (табл. 4.2). Составить программу вычисления и печати числа элементов последовательности, удовлетворяющих указанному неравенству.
Таблица 4.2
Вариант | Формула | Изменение i | Начальное | Неравенство | |||
от | до | значение | |||||
1. | ![]() | ao = 6 | ai > 1 | ||||
2. | ![]() | ao = 1 | ai < 5 | ||||
3. | ![]() | ao = 2 | ai > 100 | ||||
4. | ![]() | ao = 1 | ai < 40 | ||||
5. | ![]() | ao = 2 | ai > 15 | ||||
6. | ![]() | ao = 1 | ai < 14 | ||||
7. | ![]() | ao = -1 | ai > 500 | ||||
8. | ![]() | ao = 100 | ai < 10 | ||||
9. | ![]() | ao = 1,2 | ai > 5 | ||||
10. | ![]() | ao = 2 | ai < 3 | ||||
11. | ![]() | ao = 1 | ai > 10 | ||||
Продолжение таблицы 4.2 | |||||||
Вариант | Формула | Изменение i | Начальное | Неравенство | |||
от | до | значение | |||||
12. | ![]() | ao = 2 | ai < 150 | ||||
13. | ![]() | ao = 36 | ai > 0,1 | ||||
14. | ![]() | ao = 64 | ai > 10 | ||||
15. | ![]() | ao = 3 | ai > 4 | ||||
16. | ![]() | ao = 1 | ai > -20 | ||||
17. | ![]() | ao = 1 | ai <5 | ||||
18. | ![]() | ao = 1,5 | ai > 3 | ||||
Задача 4.3. Используя формулу для элементов последовательности ai, составить программу для вычисления суммы n элементов этой последовательности (табл.4.3). Составить рекуррентные соотношения там, где это необходимо.
Таблица 4.3
Вариант | ai | Начальное значение i | n |
1. | ![]() | ||
2. | ![]() | ||
3. | ![]() | ||
4. | ![]() | ||
Продолжение таблицы 4.3 | |||
Вариант | ai | Начальное значение i | n |
5. | ![]() | ||
6. | ![]() | ||
7. | ![]() | ||
8. | ![]() | ||
9. | ![]() | ||
10. | ![]() | ||
11. | ![]() | ||
12. | ![]() | ||
13. | ![]() | ||
14. | ![]() | ||
15. | ![]() | ||
16. | ![]() | ||
17. | ![]() | ||
18. | ![]() |
Задача 4.4. Разработать программу, которая определяет первый отрицательный (положительный) элемент последовательности значений функции при изменении
в интервале
с шагом
. Исходные данные приведены в табл. 4.4.
Таблица 4.4
Вариант | ![]() | ![]() | ![]() | ![]() | Первый элемент |
1. | ![]() | 0,25 | отрицательный | ||
2. | ![]() | -1 | 0,5 | положительный | |
3. | ![]() | -1 | -0,5 | 0,1 | отрицательный |
4. | ![]() | -1,3 | 0,1 | 0,2 | положительный |
5. | ![]() | 1,5 | 0,1 | отрицательный | |
6. | ![]() | -5 | положительный | ||
7. | ![]() | отрицательный | |||
8. | ![]() | 0,7 | 0,05 | положительный | |
9. | ![]() | 0,25 | 1,25 | 0,25 | отрицательный |
10. | ![]() | -0,5 | 0,7 | 0,3 | положительный |
11. | ![]() | -0,8 | -0,2 | 0,1 | отрицательный |
12. | ![]() | 0,9 | 1,2 | 0,05 | положительный |
13. | ![]() | 0,6 | 0,1 | отрицательный | |
Продолжение таблицы 4.4 | |||||
Вариант | ![]() | ![]() | ![]() | ![]() | Первый элемент |
14. | ![]() | 0,9 | 1,2 | 0,05 | положительный |
15. | ![]() | 0,4 | 0,7 | 0,05 | отрицательный |
16. | ![]() | 0,2 | 0,8 | 0,1 | положительный |
17. | ![]() | -3 | отрицательный | ||
18. | ![]() | положительный |
Задача 4.5. Разработать программу, определяющую сумму ряда для заданного значения
с точностью
Исходные данные приведены в табл. 4.5.
Таблица 4.5
Вариант | ![]() | ![]() | ![]() |
1. | ![]() | 0,45 | 0,01 |
2. | ![]() | 0,76 | 0,0001 |
3. | ![]() | 0,84 | 0,001 |
4. | ![]() | 0,29 | 0,00001 |
5. | ![]() | 0,44 | 0,001 |
6. | ![]() | 0,19 | 0,00001 |
Продолжение таблицы 4.5 |
Вариант | ![]() | ![]() | ![]() |
7. | ![]() | 0,21 | 0,01 |
8. | ![]() ![]() | 0,91 | 0,001 |
9. | ![]() | 0,37 | 0,0001 |
10. | ![]() | 0,05 | 0,00001 |
11. | ![]() | 0,13 | 0,01 |
12. | ![]() | 0,82 | 0,001 |
13. | ![]() | 0,66 | 0.0001 |
14. | ![]() | 0,44 | 0,00001 |
15. | ![]() | 0,25 | 0,01 |
16. | ![]() | 0,21 | 0,001 |
17. | ![]() | 0,78 | 0,0001 |
18. | ![]() | 0,32 | 0.00001 |