Теги: программирование информатика
Год: 2012
Текст
Практикум по курсам «Основы информатики», «Алгоритмы и структуры данных». Курсовой проект: 8 факультет, I курс, I семестр 2011/12 уч. года. Задание III. Вещественный тип. Приближенные вычисления. Табулирование функций Составить программу на Си, которая печатает таблицу значений элементарной функции, вычисленной двумя способами: по формуле Тейлора и с помощью встроенных функций языка программирования. В качестве аргументов таблицы взять точки разбиения отрезка [а,Ь] на и равных частей (n + 1 точка включая концы отрезка), находящихся в рекомендованной области хорошей точности формулы Тейлора. Вычисления по формуле Тейлора проводить по экономной в сложностном смысле схеме с точностью £*к, где £ - машинное эпсилон аппаратно реализованного вещественного типа для данной ЭВМ, а к - экспериментально подбираемый коэффициент, обеспечивающий приемлемую сходимость. Число итераций должно ограничиваться сверху числом порядка 100. Программа должна сама определять машинное £ и обеспечивать корректные размеры генерируемой таблицы. Дополнительное задание Для углубленного изучения вещественных типов рекомендуется провести вычисление машинного эпсилон для других (нестандартных) разновидностей вещественных типов на DEC Alpha, а также, по возможности, для других систем программирования и аппаратных средств. Сравните полученные результаты со встроенными константами системы программирования. Для изучения атрибутов вещественного и целого типов определите границы допустимого диапазона значений программным путем и сравните с соответствующими константами. Объясните полученные результаты. Дополнительное задание оформляется в виде отдельных программ. Полученные результаты необходимо включить в отчет по курсовому проекту. Успешное выполнение дополнительного задания учитывается при оценке основного задания. Замечание. Формула Тейлора сводит вычисление трансцендентных функций к алгебраическим (полиномам; схему Горнера - в студию!). Однако этот простой способ не применяется на практике ввиду большой ресурсоёмкое™ и значительной погрешности. Изучение более совершенных способов вычисления значений трансцендентных функций на ЭВМ производится в курсе численных методов. n x2n+1 Пример результатов для sin(x) = / (-1)”----------- (2и + 1)! Машинное эпсилон для типа long double в системе Compaq С на Digital Alpha = ... Таблица Значений ряда Тейлора и стандартной функции для f(х)=sin х X част, сумма ряда для sin х значения функции sin х число итераций 0.00 ... 0.0 ... 0.05 0.0008 ... 0.10 0.0017 ... 0.15 0.0026 ... 0.50 ... Варианты заданий № ряд а ь функция 1 хх3 х2и+1 9 - 92+• • •+(-0 сг+1 -1.0 1.0 X 9 + х2 2 X х3 х2и+1 V1 3 2n + V 0.0 0.5 1 + X In 1-х 3 5 ? (-1)”+1 • 2” - 1 х — х2+...+ х” 2 п -0.2 0.3 1п(1 + х - 2х2) 4 XX2 , х” 2 23 У ’ п-2п -1.0 1.0 1п(2 + х) 5 4х2 16х4 (2х)2” -—+—+• • +(-i) 2 24 v ’ (2ri)\ 0.0 0.5 2(cos2 х - 1) 6 х3 х2”4 X + + ... + 3! (2и-1)! 0.0 1.0 shx
7 Зх + 8х +.. .+z? • (z? + 2)х 0.0 0.5 х(3 - х) (1 - X)3 8 1 2х 4х2 _ 2пЧхпЧ 5 52 53 " 5” 0.0 2.0 1 2х- 5 9 2 2 2 (1+i)-(1+F)x- •“(1+FrK 0.0 0.5 Зх- 5 х2 - 4х + 3 10 2х2 23 х4 , 22”^х2” +.. .+(-1) 2! 4! 7 (2л)! 0.0 1.0 sin2x И , 3 2 / -1 \ п 2и2 +1 2и 1--х +... + (-1) X 2 (2п)\ 0.1 0.6 х2 X (1 - —) cos х - — sin х v 2 ’ 2 12 , 1иЗ 1и2 3 2 1пи 3 „ 1! 2! п\ 0.0 1.0 3х 13 v3 2»+1 Х- — + ... + (-1)”— 3! (2и + 1)! 0.0 1.0 sin x 14 - 3 - 4х - 5х2 -... - (п + 3)х” 0.1 0.6 2x-3 (x-1)2 15 X2 X2” 1-—+...+(-1)”^- 2! (2п)\ 0.0 1.0 COSX 16 1 о 2 “1“ 1 2п 1 + Зх +... + х п\ 0.0 1.0 (1 + 2x2)Z 17 т-1 + J. ,Т-1 з + + 1 Т~1 2„+1 л + 1 3 л + Г " 2и + 1 л + Г 0.2 0.7 1, — In X 2 18 v3 5 2»+1 Л Л , , м+1 +...+(-1) —-— 3 15 4л2-1 0.1 0.6 1 + X2 X 2 arctgx-2 19 х2 х2п 1 + + ... + 2 (2л)! 0.1 0.6 ch x 20 л 2х (2х)” 1 + — + ... + -—— 1! п\ 0.1 0.6 e2x 21 л л2+1.х.„ 2 п\ 2 0.1 0.6 x1 x - (— + — + l)e2 v 4 2 ’ 22 , X2 х3 . 1V_1»-1 „ 1 + — + ... + (-1) X 2 3 п\ 0.0 1.0 (1 + x)e-x 23 v3 2и+1 Х-—+...+(-1)”- 3 v ’ 2л+ 1 0.0 0.5 arctg x 24 X2 X4 X2” 1 + — + — + ... + — 1 2 п\ 0.0 1.0 25 1 X4 X4” 1 “ + . . . Н - 4 42 4n+1 0.0 1.0 1 4-x4 26* cos2x cos гас — Cos X + 9 +...+(—1) 9 22 v 7 п2 к 1 71 -(x2-—) 4 3 27* л COSX СО8ЛХ 1 + + ... + 1! п\ 0.1 0.6 ecosx • cos(sin x) 28* cos2x СО8ЛХ COSXH Н...Н 2 п к 1 бя' 5 -In 2 sin f| Задание составил к.ф.-м.н., доц. Зайцев В.Е. Варианты подготовлены к.ф.-м.н., доц. Сопруненко И.П.