Термінова допомога студентам
Дипломи, курсові, реферати, контрольні...

Підсумовування функціональних рядів

ЗвітДопомога в написанніДізнатися вартістьмоєї роботи

Скласти блок-схему алгоритму та програму обчислення. Скласти схему алгоритму та програму обчислення. Завдання 1. Підсумовування функціональних рядів. Блок-схема алгоритму Виконання завдання у Delphi. Завдання 2. Обчислення визначених інтегралів. Значення визначеного інтеграла з точністю; StringGrid2. Cells: ='Отклонение от точного значения'; StringGrid1. Cells: ='Значение первообразной функции… Читати ще >

Підсумовування функціональних рядів (реферат, курсова, диплом, контрольна)

Міністерство освіти та науки, молоді та спорту України Державний вищий навчальний заклад Національний гірничий університет Кафедра СЕП Звіт з першої навчальної практики Підсумовування функціональних рядів студентки групи ЕЕ-10−2

Яковенко Юлії

Керівник практики доц. Хацкевич Ю.В.

Дніпропетровськ

Зміст Завдання 1. Підсумовування функціональних рядів

1.1 Умови завдання

1.2 Блок-схема алгоритму

1.3 Виконання завдання у Delphi

1.4 Код програми обчислення у Delphi

1.5 Виконання завдання в Excel

1.6 Висновок Завдання 2. Обчислення визначених інтегралів

2.1 Умови завдання

2.2 Блок-схема алгоритму

2.3 Виконання завдання у Delphi

2.4 Код програми обчислення у Delphi

2.5 Виконання завдання в Excel

2.6 Висновок Завдання 3. Операції з масивами

3.1 Умови завдання

3.2 Блок-схема алгоритму

3.3 Виконання завдання у Delphi

3.4 Код програми обчислення у Delphi

3.5 Виконання завдання в Excel

Висновок

Завдання 1. Підсумовування функціональних рядів

1.1 Скласти блок-схему алгоритму та програму обчислення

· Значення функціональної суми свого варіанту накопиченим підсумком для кількості членів і від 1 до n доданків;

· Значення суми з потрібною точністю =0,001. Знайти також кількість підсумованих при цьому елементів (членів);

· Значення функції згідно з її формулою.

1.2. Функціональний ряд:

Діапазон зміни аргументу: [0,1;0,8]

n=13

Функція:

Схема алгоритму обчислення значення функціональної суми Виконання завдання у Delphi

Обчислення функціональної суми при х=0,1

Обчислення функціональної суми при х=0,4

Обчислення функціональної суми при х=0,8

Код програми обчислення у Delphi

unit Unit1;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, Math, StdCtrls;

type

TForm1 = class (TForm)

Edit1: TEdit;

Label1: TLabel;

Edit2: TEdit;

Label2: TLabel;

Label3: TLabel;

Edit3: TEdit;

Button1: TButton;

Label4: TLabel;

Edit4: TEdit;

Edit5: TEdit;

Label5: TLabel;

Edit6: TEdit;

Label6: TLabel;

procedure Button1Click (Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1. Button1Click (Sender: TObject);

var x, y, sn, se, dif: real;

i:integer;

begin

x:=strtofloat (edit1.text);

if (x>=pi/5) and (x<=(4*pi)/5) then

begin

sn:=0;

for i:=1 to 18 do

begin

sn:=sn+power (-1,i+1)*(sin (i*x)/i);

end;

edit2.Text:=floattostr (sn);

i:=1;

se:=0;

while abs (power (-1,i+1)*(sin (i*x)/i))>=0.001 do

begin

se:=se+power (-1,i+1)*(sin (i*x)/i);

i:=i+1;

end;

edit5.Text:=inttostr (i);

edit3.text:=floattostr (se);

y:=x/2;

edit4.Text:=floattostr (y);

dif:= se-sn;

edit6.Text:=floattostr (dif);

end

else

begin

edit2.Text:='повторите ввод';

edit3.Text:='повторите ввод';

edit4.Text:='повторите ввод';

edit5.Text:='повторите ввод';

edit6.Text:='повторите ввод';

end;

end;

end.

Виконання завдання в Excel

Обчислення функціональної суми Виконання завдання у режимі відображення формул Висновок Це завдання було легко робити у Delphi. Результати роботи зрозумілі та наглядні. Але зрозуміліше та швидше, звісно в Excel. Завдяки тому що ми побудували в Excel графік залежності значення суми від кількості підсумованих членів, можна було наглядно побачити результати виконання завдання.

Завдання 2. Обчислення визначених інтегралів

2.1 Скласти схему алгоритму та програму обчислення

· визначеного інтеграла при 8−10 значеннях кількістю n відрізків розбивки інтервалу;

· значення визначеного інтеграла з точністю ;

· точного значення інтеграла засобом табулювання першообразної функції та з відомої формули Ньютона-Лейбніца;

2.2 Загальна формула Сімпсона:

; ;

2.3. Інтеграл:

Метод Трапецій; Число дільниць інтегрування n=22; Крок h=;

Первісна функція: ;

Блок-схема алгоритму обчислення

інтеграл програма код алгоритм

Виконання завдання у Delphi

Код програми обчислення у Delphi

unit Unit1;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, Grids, StdCtrls, Math;

type

TForm1 = class (TForm)

Button1: TButton;

StringGrid1: TStringGrid;

Button2: TButton;

Memo1: TMemo;

StringGrid2: TStringGrid;

Label2: TLabel;

Edit1: TEdit;

procedure FormCreate (Sender: TObject);

procedure Button1Click (Sender: TObject);

procedure Button2Click (Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1. Button1Click (Sender: TObject);

var Summ, h, b, x, f:real;

a, i: integer;

begin

x:=StrToFloat (edit1.Text);

h:=pi/12;

a:=0;

i:=1;

b:=pi/12;

x:=a;

Summ:=0;

while x<=b do

begin

f:=(x/2)-(¼)*sin (2*x);

StringGrid1.RowCount:=StringGrid1.RowCount+1;

StringGrid1.Cells[0,i]: =FloatToStr (i);

StringGrid1.Cells[1,i]:=FloatToStr (x);

StringGrid1.Cells[2,i]:=FloatToStr (f);

x:=x+h;

i:=i+1;

Summ:=Summ+f;

end;

Memo1.Clear;

Memo1.Lines.Add ('Summ='+FloatToStr (Summ));

end;

procedure TForm1. FormCreate (Sender: TObject);

begin

StringGrid1.Cells[0,0]: ='Xi';

StringGrid1.Cells[1,0]:='Значение Xi';

StringGrid1.Cells[2,0]: ='Значение первообразной функции';

StringGrid2.Cells[0,0]: ='a';

StringGrid2.Cells[1,0]:='b';

StringGrid2.Cells[2,0]:='Число участков n';

StringGrid2.Cells[3,0]: ='Шаг h';

StringGrid2.Cells[4,0]: ='Значение интеграла';

StringGrid2.Cells[5,0]: ='Отклонение от точного значения';

end;

procedure TForm1. Button2Click (Sender: TObject);

var x, f, C, Summ, K, v, u, S, h, b:real;

i, n, a:integer;

begin

x:=StrToFloat (edit1.Text);

b:=pi/2;

f:=(x/2)-(¼)*sin (2*x);

a:=0;

n:=6;

h:=(b-a)/n;

v:=power (sin (a), 2)+power (sin (b), 2)

K:=0;

for i:=1 to (n-1) do

begin

u:=power (sin (a+i*h), 2);;

K:=K+u;

end;

S:=h*((v/2)+K);

while (abs (S-Summ))<0.001 do

begin

h:=h/2;

n:=2*n;

end;

C:=abs (S-f);

StringGrid2.RowCount:=StringGrid2.RowCount+1;

StringGrid2.Cells[0,StringGrid2.RowCount-2]: =FloatToStr (a);

StringGrid2.Cells[1,StringGrid2.RowCount-2]:=FloatToStr (b);

StringGrid2.Cells[2,StringGrid2.RowCount-2]:=FloatToStr (n);

StringGrid2.Cells[3,StringGrid2.RowCount-2]:=FloatToStr (h);

StringGrid2.Cells[4,StringGrid2.RowCount-2]:=FloatToStr (S);

StringGrid2.Cells[5,StringGrid2.RowCount-2]:=FloatToStr (C);

end;

end.

Виконання завдання у Excel

Виконання завдання у режимі відображення формул Висновок Це завдання було легше виконувати у Delphi. Більш точнішими значення були у Excel. Але щоб отримати задану точність потрібно виконувати дію на великій кількості дільниць інтегрування. Тому можна зробити висновок, що це завдання раціональніше робити у Delphi.

Завдання 3. Операції з масивами

3.1 Скласти схему алгоритму та програму перетворення дійсного вектора за правилом: якщо, то всім елементам надати значення найбільшого з них. Якщо, то вектор залишити незмінним. У протилежному випадку всі елементи замінити їх квадратами. Елементи вектора обчислювати попередньо за формулою, і = 1,2,…, 6.

Визначений вектор вивести до друку.

Блок-схема алгоритму Виконання завдання у Delphi

Код програми обчислення у Delphi

unit Unit1;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, Math, StdCtrls;

type

TForm1 = class (TForm)

Memo1: TMemo;

Button1: TButton;

procedure Button1Click (Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1. Button1Click (Sender: TObject);

Var x: array[1.10] of real;

flag:boolean;

i:integer;

begin

flag:=true;

For i:=1 to 6 do

x[i]: =arctan (sqrt (i)+2/9);

For i:=1 to 5 do

if (x[i]>x[i+1])then

flag:=false;

If flag=true then

For i:=1 to 5 do

x[i]: =x[6]

Else

begin

flag:=true;

For i:=1 to 5 do

if (x[i]

flag:=false;

If flag=false then

For i:=1 to 6 do

x[i]: =sqr (x[i]);

end;

memo1.lines.clear;

for i:=1 to 6 do

memo1.lines.add (floattostr (x[i]));

end;

end.

Виконання завдання у Excel

Виконання завдання у режимі відображення формул Висновок Це завдання було набагато легше виконувати y Excel. Значення були точними як у Excel, так й у Delphi. Виконання завдання у Excel універсальне та раціональне, тому що можна використовувати для різних значень ікса.

Показати весь текст
Заповнити форму поточною роботою