Задание №3
Описание
Составьте программу вычисления значения суммы ряда и функции , где , с шагом . Вычисление суммы ряда Тейлора производится с погрешностью, не превышающей .
Результат представить в виде таблицы (без рамок), которая содержит четыре столбца со значениями x, Y(x), S(x) и N, где N - номер последнего слагаемого ряда.
Ширина столбца: 15 символов.
Последний столбец пробелами не заполняется!
Требуемая точность: 6 знаков после запятой
Варианты
| № | ||
|---|---|---|
| 0 | , где | |
| 1 | ||
| 2 | ||
| 3 | ||
| 4 | ||
| 5 | , где | |
| 6 | ||
| 7 | ||
| 8 | ||
| 9 | ||
| 10 | ||
| 11 | ||
| 12 |
Пример вывода в консоли
x Y(x) S(x) N
0.000000 1.000000 1.000000 1
0.200000 0.980067 0.980067 3
0.400000 0.921061 0.921061 4
0.600000 0.825336 0.825335 4
0.800000 0.696707 0.696707 5
1.000000 0.540302 0.540303 5
В первой строке выводятся названия колонок.
Указания по выполнению задания
При вычислении значения очередного члена ряда используйте значение предыдущего члена, для чего следует вручную получить соотношение вида
Вычислении членов ряда, начиная со второго (а может и с третьего) следует выполнять по формуле:
Это упростит вычисления, повысит их точность и позволит избежать возможного переполнения разрядной сетки сумматора ПК при вычислении факториалов и степеней.
Заданная точность обеспечивается суммированием членов ряда вплоть до слагаемого, абсолютное значение которого меньше заданной погрешности.
Для представления результата в виде таблицы используйте:
- для C использовать форматирование вывода (см. ниже);
- для C++ манипулятор
setw.
Близость значений и (отличие должно быть меньше или равно заданной точности) во всем диапазоне значений указывает на правильность их вычисления.
Представление в виде таблицы в C
Основано на ответе.
Если вам нужно ровно 40 пробелов перед строкой, вам просто нужно сделать:
printf(" %s\n", myStr);
Если это слишком грязно, вы можете сделать (но это будет медленнее, чем вводить 40 пробелов вручную):
printf("%40s%s", "", myStr);
Если вы хотите, чтобы строка была выровнена в столбце 40 (то есть, в ней должно быть до 39 пробелов, так что самый правый символ находится в столбце 40), то сделайте это:
printf("%40s", myStr);
Вы также можете поместить "до" 40 пробелов после строки, выполнив:
printf("%-40s", myStr);
Проверка задания
Подготовленная программа для решения задания проверяется вручную преподавателем (визуальный контроль).