x | y |
|
|
|
|
|
|
| 0,4 | 2,267 |
|
|
|
|
|
|
|
0,7 | 1,576 |
|
|
|
У Mathcad:
У Turbo Pascal:
program zadanie3;
uses crt;
const n = 4;
var x, y: array [1. n] of real;
i: integer;
z, j, d: real;
begin
clrscr;
for i: = 1 to n do
begin
write ('Enter x [i] =');
readln (x [i]);
end;
for i: = 1 to n do
begin
j: = exp (3 * x [i]) - exp (3 * ln (sin (x [i]) / cos (x [i ])));
z: = exp (1 / 5 * ln (abs (j))) * (abs (j) / j);
d: = sqrt (sqr (x [i]) + sqr (sin (x [i ])));
y [i]: = z / d;
writeln ('x [i] =', x [i]: 5: 1, 'y [i] =', y [i]: 5: 3);
end;
readkey;
end.
Блок-схема алгоритму розв'язання завдання № 1.3
Знаходження функції заданому масиві:
Результати обчислень:
Завдання 1 (г) обчислення суми в Microsoft Excel
У третьому стовпці формула має ві д: = (A2 ^ (-A2 * SIN (A2)) - LN (2 * A2 +5)) / (КОРІНЬ (2 + SIN (2 * A2)) + A2 ^ 2)
У четвертому стовпці формула має ві д: = СУММ (C2 * B2 + C3 * B3 + C4 * B4 + C5 * B5)
x | a | y | S |
1,1 | 0,42 | -0,368 | -1,3 |
1,3 | 0,7 | -0,399 | |
1,5 | 0,9 | -0,413 | |
1,7 | 1,2 | -0,408 |
|
У Mathcad:
У Turbo Pascal:
Program Summa;
uses crt;
const n = 4;
Var x, z, d, Xn, h, F, S: Real;
i: Integer;
a: array [1. n] of Real;
BEGIN
clrscr;
randomize;
Write ('enter please Xn, h =');
ReadLN (Xn, h);
for i: = 1 to n Do
begin
Write ('enter please a [i] =');
ReadLN (a [i]);
end;
x: = Xn;
S: = 0;
for i: = 1 to n Do
begin
z: = exp ((-x * sin (x)) * ln (x)) - ln (2 * x +5);
d: = sqrt (2 + sin (2 * x)) + sqr (x);
F: = z / d;
S: = S + F * a [i];
x: = x + h;
end;
WriteLN ('S =', S: 10: 3);
readkey
END.
Результати обчислень:
Блок-схема алгоритму розв'язання завдання № 1.4
Знаходження функції, якщо дано x, h, n, заданий масив:
Завдання 2. Інтегрування функції
Обчислити визначений інтеграл
Так як певний інтеграл є площею фігури, обмеженої деякою функцією y = f (x), то метою задачі є знаходження площі цієї фігури. Для цього необхідно дану фігуру розбити на більш прості, площа яких знаходиться за простими формулами, а потім скласти отримані площі в одну для знаходження необхідної, тобто для обчислення цього визначеного інтеграла.
Існують різні методи знаходження визначеного інтеграла.
Розглянемо деякі з них:
метод середніх прямокутників;
метод трапецій;
метод Сімпсона (парабол);
з автоматичним вибором кроку;
1. Метод прямокутників
Для обчислення наближеного значення певного інтеграла відрізок [a, b] ділять на n рівних частин точками
a = x 0 <x 1 <x 2 <... <x n = b
так, що x i +1-x i = (ba) / n (I = 0,1,2, ..., n-1). Тоді довжина кожного часткового відрізка визначається як h = (b - a) / n, а точки розбиття x 0 = a, x 1 = x 0 + h, x 2 = x 1 + h, ..., x n = x n -1 + h. Ці точки називаються вузлами, а h-кроком інтегрування. У вузлах обчислюються ординати y 0, y 1, ..., y n, тобто y i = f (x i). На часткових відрізках [x i; x i +1] будуються прямокутники, висота яких дорівнює значенню f (x) у будь-якій точці кожного часткового відрізка. Твір f (x i) * h визначає площа часткового прямокутника, а сума таких творів - площа ступінчастою фігури, що представляє собою наближене значення інтеграла.
Якщо f (x i) обчислюється в лівих кінцях відрізків [x i; x i +1], то виходить формула лівих прямокутників:
»I л = (Y 0 + y 1 + ... + y n -1) = .
Якщо f (x i) обчислюється в правих кінцях відрізків [x i; x i +1], то вийде формула правих прямокутників:
»I п = (Y 1 + y 2 + ... + y n) = .
Якщо функція f обчислюється в точках x i + h / 2 Î [x i;; x i +1], то виходить формула середніх прямокутників:
2. Метод трапеції
Метод трапецій аналогічний методу прямокутників, з тією лише різницею, що на кожному частковому відрізку будується трапеція.
Наближене значення інтеграла дорівнює сумі всіх площ часткових трапецій:
»I =
3. Метод Сімпсона
Якщо на частковому відрізку довжиною 2 h функції замінюється дугою параболи, то можна отримати формулу парабол або узагальнену формулу Сімпсона:
= (H / 3) * (y 0 + y 2 n + ,
де
1 при i - непарній;
C i =
1 при i - парному;
4. З автоматичним вибором кроку
Точність обчислення визначеного інтеграла залежить від величини кроку інтегрування. Помилка у виборі величини кроку інтегрування або не забезпечить потрібної точності, або призведе до необгрунтованих витрат машинного часу.
Задану точність при раціональних витратах часу на обчислення забезпечують алгоритми інтегрування з автоматичним вибором кроку. Ідея методу автоматичного вибору кроку інтегрування для досягнення заданої точності полягає в наступному:
а) вибирається початкова n і обчислюється крок h = (b - a) / n;
б) розраховується значення інтеграла I 1 для цього кроку h;
в) крок h зменшується у два рази, тобто h = h / 2 і обчислюється значення інтеграла I 2;
г) оцінюється похибка між двома значеннями r = ½ I 1 - I 2 ½; якщо похибка r менше або дорівнює заданій точності, тобто r <= e, то точність досягнута і значення інтеграла I = I 2; якщо r> e , то точність не досягнута і величиною I 1 присвоюється більш точне значення I 2;
д) тепер повторюються етапи в) і г) до виконання умови r <= e.
Обчислення визначеного інтеграла за допомогою пакету MathCAD в нормальному і символьному вигляді.
Для вирішення інтеграла чисельно й у символьному вигляді необхідно задати функцію f (x) і знайти від неї інтеграл на проміжку [a, b].
Для обчислення чисельного значення заданого інтеграла:
За допомогою вбудованих функцій задаємо визначений інтеграл;
Після натискання клавіші "=", MathCAD видає значення інтеграла на заданому проміжку.
У Mathcad:
При вирішенні інтеграла в символьному вигляді:
За допомогою вбудованих функцій задаємо інтеграл;
Виклик до меню "Математика" підменю "Булен" і натискання "®" або Control +. призводить до обчислення інтеграла в символьному вигляді.
У Mathcad:
У Turbo Pascal:
Текст програми обчислення
певного інтеграла методом
середніх прямокутників на TP
program Sredniipriamougolniki;
uses crt;
var a, b, h, s, y, x: real;
i, n: integer;
begin clrscr;
write ('Vvedite a, b, n =');
readln (a, b, n);
h: = (ba) / n;
x: = a + h / 2;
s: = 0;
for i: = 1 to n do
begin
s: = s +1 / sqr (3 * sin (x) +2 * cos (x));
x: = x + h;
end;
y: = h * s;
writeln ('n =', n, 'y =', y: 10: 3);
readkey;
end.
Результати роботи програми:
a = 0 b = 1 n = 1000 y = 0.117
Блок-схема алгоритму розв'язання завдання № 2.1
Обчислення визначеного інтеграла методом середніх прямокутників:
Текст програми обчислення
певного інтеграла методом
трапеції
program integral 2;
uses crt;
var a, b, h, S, S1, x, y: real;
i, n: integer;
function f (c: real): real;
begin
f: = 1/sqr (3 * sin (x) +2 * cos (x));
end;
begin clrscr;
write ('a, b, n =');
readln (a, b, n);
h: = (ba) / n;
x: = a;
s: = 0;
for i: = 1 to n-1 do
begin
x: = x + h;
s: = s + f (x);
end;
S1: = f (a) + f (b);
y: = (h / 2) * (S1 +2 * s);
writeln ('n =', n, 'y =', y: 8: 3);
readkey;
end.
Результати роботи програми
a = 0 b = 1 n = 1000 y = 0.117
Блок-схема алгоритму розв'язання завдання № 2.2
Обчислення визначеного інтеграла методом трапеції:
Текст програми обчислення
певного інтеграла
методом Сімпсона
program simpson;
uses crt;
var a, b, h, x, y, s, s1: real;
i, n, c, m: integer;
function f (x: real): real;
begin
f: = 1/sqr (3 * sin (x) +2 * cos (x));
end;
begin clrscr;
write ('a, b, n =');
readln (a, b, n);
h: = (ba) / (2 * n);
x: = a;
s: = 0;
c: = 1;
m: = 2 * n-1;
for i: = 1 to m do
begin
x: = x + h;
s: = s + (3 + c) * f (x);
c: =- c;
end;
s1: = f (a) + f (b);
y: = (h / 3) * (s1 + s);
writeln ('y =', y: 10: 3, 'n =', n);
readkey;
end.
Результати роботи програми
a = 0 b = 1 n = 1000 y = 0.117
Блок-схема алгоритму розв'язання завдання № 2.3
Обчислення визначеного інтеграла методом Сімпсона:
Текст програми обчислення
певного інтеграла з
автоматичним вибором кроку
program avtomaticheskiyshag;
uses crt;
var e, a, b, s, h, sn, sn1: real;
i, n: integer;
function f (x: real): real;
var y: real;
begin
f: = 1/sqr (3 * sin (x) +2 * cos (x));
end;
begin
clrscr;
write ('a ='); read (a);
write ('b ='); read (b);
write ('e ='); read (e);
sn: = 0;
sn1: = 0;
n: = 100;
repeat
n: = n * 2;
h: = (ba) / n;
s: = 0;
sn: = sn1;
s: = s + f (a) + f (b);
for i: = 1 to (n-1) do
s: = s +2 * f (a + i * h);
s: = (h / 2) * s;
sn1: = s;
until abs (sn-s) <e;
writeln ('s =', s: 8: 3);
readkey;
end.
Результати роботи програми
a = 0 b = 1 n = 1000 s = 0.117
Завдання 3. Рішення системи лінійних рівнянь
Рішення рівняння з допомогою MathCAD
Дане завдання в MathCAD буде виконуватися з використанням ранжированого змінної. У середовищі пакету MathCAD для виконання ітеративних обчислень передбачений апарат ранжируваних змінних.
Ранжируваних мінлива-це змінна, якої приписаний діапазон зміни значень.
Приклад ранжированого змінної:
x: = a, b. c,
де x - змінна, a, b, c - значення, які приймає змінна, тобто a-перше значення, b-друге значення, тобто (B - a) - крок зміни змінної, і c-останнє значення. .
Розглянемо рішення системи лінійних рівнянь матричним методом:
a 11 X 1 + a 12 X 2 + a 13 X 3 = b 1, a 21 X 1 + a 22 X 2 + a 23 X 3 = b 2, a 31 X 1 + a 32 X 2 + a 33 X 3 = b 3.
Рішення цим методом полягає у вирішенні матричного рівняння виду:
R = M -1 * V.
Для цього необхідно:
сформувати матрицю коефіцієнтів системи лінійних рівнянь
сформувати вектор-стовпець коефіцієнтів вільних членів системи лінійних рівнянь V:
b 1
V: = b 2
b 3
знайти шукані параметри за допомогою матричного рівняння: R = M -1 * V.
отримаємо:
X 1
R = X 2
X 3
Розглянемо рішення системи лінійних рівнянь за допомогою вирішального блоку Given - Find.
Для вирішення системи рівнянь цим способом використовується спеціальна конструкція, яка називається вирішальним блоком. Блок складається із заголовка (Given), його тіла (певної системи рівнянь) кінця блоку (Find). Find включає в себе перелік змінних блоку, щодо яких повинна бути вирішена система рівнянь.
Для вирішення цим методом введемо початкові наближені значення шуканих значень:
X 1: = 0 X 2: = 0 X 3: = 0
опишемо блок рішення:
Given
x 11 X 1 + x 12 X 2 + x 13 X 3 = b 1, x 21 X 1 + x 22 X 2 + x 23 X 3 = b 2, x 31 X 1 + x 32 X 2 + x 33 X 3 = b 3.
опишемо провідні змінні:
r: = find (X 1, X 2, X 3)
знайдемо шукані параметри:
X 1
r = X 2
X 3
Приклад обчислення:
1) рішення системи лінійних рівнянь матричним методом:
2) рішення системи лінійних рівнянь за допомогою вирішального блоку Given - Find.
, ,
Завдання 4. Рішення нелінійного рівняння
Задача знаходження коренів нелінійних рівнянь виду F (x) = 0 зустрічається в різних галузях наукових досліджень. Нелінійні рівняння можна розділити на два класи - алгебраїчні і трансцендентні. Алгебраїчними рівняннями називаються рівняння, що містять тільки алгебраїчні функції. Рівняння, що містять інші функції (тригонометричні, показникові, логарифмічні та ін) називаються трансцендентними.
За умовами задачі рівняння cosx - x +4 = 0 є трансцендентним. Тому для знаходження коренів будемо використовувати наближені методи обчислення (метод дотичних і метод половинного поділу).
Існують різні ітераційні методи рішення трансцендентних рівнянь. Найбільш відомі: метод дотичних, метод половинного ділення, метод хорд, комбінований метод хорд і дотичних, метод ітерацій і т.д.
Метод половинного поділу відрізка навпіл є одним з найпростіших методів знаходження коренів нелінійних рівнянь. Метод досить повільний, проте він завжди сходиться, тобто при використанні рішення виходить завжди, причому з заданою точністю. Необхідну зазвичай більше число ітерацій в порівнянні з деякими іншими методами не є перешкодою до застосування цього методу, якщо кожне значення функції нескладно.
Метод дотичних або метод Ньютона. У цьому методі кожній ітерації обсяг обчислень більший, ніж у раніше розглянутому методі половинного ділення, оскільки доводиться знаходити не тільки значення функції F (x), але і значення її похідних. Однак швидкість збіжності тут значно вища, ніж у попередньому методі.
Рішення нелінійного рівняння в середовищі пакету MathCAD
За умовами задачі дане нелінійне рівняння є трансцендентним. Для знаходження коренів цього рівняння скористаємося функцією root.
Рішення трансцендентних рівнянь методом дотичних
program kasatelnie;
uses crt;
label 20;
var a, b, E, U, D, x: real;
function f (x: real): real;
begin
f: = u * u * u-7 * u-7;
end;
function f1 (x: real): real;
begin
f1: = 3 * x * x-10;
end;
function f2 (x: real): real;
begin
f2: = 6 * x;
end;
begin
writeln ('a, b, E =');
read (a, b, E);
if f (a) * f2 (a)> 0 then
u: = a else u: = b;
20: D: = f (u) / f1 (u);
u: = ud;
if ABS (d)> E then goto 20;
writeln ('u =', u: 7: 3);
readkey;
end.
Результати роботи програми
a = 2 b = 4 e = 0.01 x = 3.000
Блок-схема алгоритму розв'язання завдання № 4.2
Метод дотичних:
Рішення трансцендентних рівнянь методом розподілу відрізка навпіл
Program polovinoedelenie;
uses crt;
label 20,30,40;
var a, b, E, V, W, X, Z: real;
function f (x: real): real;
begin
f: = x * x * x-7 * x-7;
end;
begin
writeln ('a, b, E =');
read (a, b, E);
V: = f (a);
W: = f (b);
20: x: = (a + b) / 2;
z: = f (x);
if z = 0 then goto 30;
if V * Z> = 0 then
begin
a: = x;
v: = z;
end;
begin
b: = x;
W: = z;
end;
40: if (ba)> E then goto 20;
x: = (a + b) / 2;
30: writeln ('x =', x: 6: 3);
readkey;
end.
Результати роботи програми
a = 2 b = 4 e = 0.01 u = 3.049
Блок-схема алгоритму розв'язання завдання № 4.1
Метод поділу відрізка навпіл:
Завдання 5. Організація знаходження мінімуму і максимуму елемента в масиві випадкових чисел в середовищі пакету MathCAD
Організувати знаходження MIN і MAX елемента в масиві випадкових чисел К. Генерацію елементів масиву здійснити за допомогою вбудованої функції RND (N); обчислення провести за допомогою вбудованих функцій MIN (К) і MAX (К)
У Mathcad:
Необхідне знаходження значень в середовищі MathCAD можна провести за допомогою вбудованих функцій.
Для вирішення цього завдання потрібно: задати проміжок, в якому будуть генеруватися випадкові числа; скористатися функцією rnd; після того, як будуть обрані випадкові числа, скористаємося функцією знаходження мінімального і максимального значень: min (x) і max (x).
Завдання 6
Визначити середнє арифметичне, середнє квадратичне відхилення рядів N i і K i, дисперсію та коефіцієнт кореляції. Введення N i і K i -У вигляді векторів з 10 елементів, кожен з зовнішніх файлів даних, підготовлених вручну або за допомогою будь-якої програми, що дозволяє створювати файли у форматі ASCIT. Розрахунок - за допомогою вбудованих функцій: mean (N), mean (K), var (N), var (K), stdev (K), stdev (K), corr (N, K).
Додати в блог або на сайт
Цей текст може містити помилки.
Програмування, комп'ютери, інформатика і кібернетика | Курсова
122.6кб. | скачати
Схожі роботи:
Типи даних алгоритмічної мови TURBO Pascal Стандартні функції і оператори роботи з рядками
Складання програм для вирішення задач на мові програмування Turbo Pascal
Створення довідника Парфумерний магазин за допомогою програми Turbo Pascal
Рішення задач на мові програмування Turbo Basik
Рішення математичних завдань засобами Excel
Аналіз медико-біологічних даних за допомогою Microsoft Excel і СПП STADIA 62
Обробка табличної інформації за допомогою зведених таблиць засобами MicroSoft Excel
Структуровані типи даних записи та множини Використання процедур та функції мови Turbo Pascal
Рішення задач за допомогою ЕОМ