3.2 Опис використовуваних типів даних
У даному курсовому проекті використовуються такі типи даних: ;;;.
Тип даних string використовується для опису змінних строкового типу. У даній програмі використовується для зберігання проміжних результатів вводяться в поля введення даних, таких як значення параметрів функції, координати вертикальних прямих і крайні точки графіка, і виведення інформації в різні поля виводу (як приклад можна привести значення які ми переводили з чисельного типу в строковий , щоб занести в StringGrid).
Тип даних integer. Даний тип використовується для зберігання цілих чисел у діапазоні від - 32 768 до 32767. У даній програмі неодноразово використовується в якості лічильника, для проведення різних розрахунків. Як приклад можна привести цикл For.Прімером є змінні: f, N, i, dx, dy, k, m та ін.
Тип даних real призначений для зберігання дійсних чисел в діапазоні від - 2,9? тисяча тридцять дев'ять до 1,7? тисяча тридцять вісім. У програмі використовується для зберігання дрібних значень, таких як масштаб, значення точок для побудови графіків, розраховані значення функції, її похідній і за методами. Прикладом є змінні: x1, xn, h, Fmax, Fmin, g та ін.
Тип даних tcolor використовується для оформлення програми, для налаштування кольору осей при побудові графіка і безпосередньо для налаштування кольору графіка.
3.3 Створення основної форми програми
Головна форма додатка, використовувана для основних операцій, містить наступні компоненти: Головне меню, контекстне меню поля введення/виведення даних, поле побудови.
Головне меню містить наступні пункти і команди:
Файл - Закрити (закриває програму), Очистити (Очистити значення, Очистити таблицю 1, Очистити Таблицю 2);
Правка - Заповнити (Заповнити першу таблицю, Заповнити другий таблицю, Метод Адамса третього порядку, Метод Хемминга 4-го порядку);
Довідка-Про автора (відображає інформацію про автора);
Вид головної форми при запуску програми показаний на малюнку 3.
Малюнок 3 - Головна форма програми
3.4 Написання коду для введення вихідних даних
Для введення вихідних даних, описаних у таблиці 1, використовуються компоненти Delphi 7 Edit, які розташовані на головній формі. При введенні даних в поля даних компонентів, програма отримує інформацію строкового типу. Для розрахунків і побудов необхідний числовий тип, для цього введену користувачем інформацію переводимо допомогою команди StrToInt (переводить в цілі числа) або StrToFloat (переводить в дробові числа). Для зворотного перетворення використовують команди FloatToStr і IntToStr.
У додатку є захист від некоректного введення, що спрацьовує при виконанні розрахунків і побудови. Якщо введені некоректні дані, користувач отримає про це повідомлення.
3.5 Написання коду основних розрахунків
Курсовий проект виконаний в Delphi 7, програмний код показаний в Додатку А.
Для початку ведеться введення даних незалежних змінних «а», встановлюється розмір таблиці n, і область визначення від «X1» до «Xn». Розраховується крок (h=(xn-x1)/n), будується таблиця. Потім ведеться розрахунок за методами.
Адамса 3 порядку:
procedure TForm1.Button4Click (Sender: TObject); i, n: integer; x1, xn, h, a, b: real; (edit1.text= ) or (edit2.text= ) or (edit3.text= ) or (edit5.text= ) then ( Перевірте правильність введених значенийraquo;);:=strtofloat(edit5.Text);:=strtofloat(edit1.Text);:=strtofloat(edit2.Text);:=strtoint(edit3.Text);:=(xn-x1)/n;i:=1 to (n + 1) do.Cells[i,3]:=floattostr(Cos(a*strtofloat(stringgrid1.Cells[i+2,1])*strtofloat(stringgrid1.Cells[i+2,1]))+h*(23*(-sin(a*strtofloat(stringgrid1.Cells[i+2,1])*strtofloat(stringgrid1.Cells[i+2,1])))*(2*a*strtofloat(stringgrid1.Cells[i+2,1]))- 16*(-sin(a*strtofloat(stringgrid1.Cells[i+1,1])*strtofloat(stringgrid1.Cells[i+1,1]))*(2*a*strtofloat(stringgrid1.Cells[i+1,1])))+5*(-sin(a*strtofloat(stringgrid1.Cells[i,1])*strtofloat(stringgrid1.Cells[i,1]))*(2*a*strtofloat(stringgrid1.Cells[i,1]))))/12);;
Хемминга 4 порядку за схемою 1/3: TForm1.Button8Click (Sender: TObject); i, n: integer; x1, xn, a, b, h: real; (edit1.text= ) or (edit2.text= ) or (edit3.text= ) or (edit5.text= ) then ( Перевірте правильність введених значень );:=strtofloat (edit5.Text);:=strtoint (edit3.Text) - 1;:=strtofloat (edit1.Text);:=strtofloat (edit2.Text);:=(xn-x1)/n; i:=1 to (n + 1) do.Cells[i,3]:=floattostr((cos(a*strtofloat(stringgrid2.Cells[i+3,1])*strtofloat(stringgrid2.Cells[i+3,1]))+cos(a*strtofloat(stringgrid2.Cells[i+2,1])*strtofloat(...