Учебное пособие 1958
.pdf
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Продолжение табл. 2 |
|
8 |
x a cos(ln(x)); еслиx 3; |
|
||||||||||||||||
|
y |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
b x2 ;еслиx 3. |
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
||||||||
9 |
|
|
|
|
|
|
|
|
tg(x); еслиx 5; |
|
||||||||
|
y |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
a x ln(b x) c;еслиx 5. |
|
||||||||||||||||
10 |
a x b x sin(c x); еслиx 3.4; |
|
||||||||||||||||
|
y |
|
|
|
|
|
sin(a x) b;еслиx 3.4. |
|
||||||||||
|
|
|
|
|
|
|
|
|||||||||||
11 |
|
|
|
|
|
|
|
|
|
|
abx |
; еслиx 2.7; |
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
y a b e |
|
|
|
|
|
||||||||||||
|
ln(a b x);еслиx 2.7. |
|
||||||||||||||||
12 |
|
|
|
|
|
|
|
|
a x2; если x 4; |
|
||||||||
|
y |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
a bx3 |
ln(x);еслиx 4. |
|
||||||||||||||
|
|
|
|
|||||||||||||||
13 |
|
|
|
|
|
|
|
|
|
|
|
2 |
c); еслиx 7.3; |
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
y a/(b x |
|
|
|||||||||||||||
|
a x b x3 c;еслиx 7.3. |
|
||||||||||||||||
14 |
|
ax |
|
b; еслиx 6.4; |
|
|||||||||||||
|
y e |
|
|
|
|
|
||||||||||||
|
e ax |
c;еслиx 6.4. |
|
|||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
15 |
ln(a x) b; еслиx 3.9; |
|
||||||||||||||||
|
y |
|
|
b x c;еслиx 3.9. |
|
|||||||||||||
|
|
|
|
|
||||||||||||||
16 |
|
|
|
|
2 |
(a x) b x; еслиx 3.7; |
|
|||||||||||
|
sin |
|
|
|
||||||||||||||
|
y |
|
|
|
|
|
|
|
ln3 (x);еслиx 3.7. |
|
||||||||
|
|
|
|
|
|
|
|
|
|
|||||||||
17 |
ln |
|
x |
|
; если x 3; |
|
||||||||||||
|
|
|||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
если x 2; |
|
|||||||||||
|
y x; |
|
|
|
||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| sin(x) |;востальных случаях. |
|
|||||||||||||||
|
|
|
|
19
Продолжение табл. 2
18 |
|
|
ax |
; если x 3; |
|||||||||||||||||
|
e |
|
|
|
|
|
|
|
|||||||||||||
|
y 0.75 a x; если x 2; |
||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
a x;востальных случаях. |
||||||||||||||||||||
19 |
(1 b x2 )2; если x 1; |
||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
y |
|
|
|
(1 b x3 )2 ; если x 3; |
||||||||||||||||
|
|
|
|
|
|
|
|
|
|
x;востальных случаях. |
|||||||||||
|
|
|
|
|
|
|
|
|
|
||||||||||||
20 |
ln |
|
sin(x) |
|
; если x 1; |
||||||||||||||||
|
|
||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
y e |
|
x |
|
|
|
|
|
x |
|
; если x 2; |
||||||||||
|
|
|
|
|
|||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0.5 | x|;востальных случаях. |
||||||||||||||||||||
21 |
tg(x); если x 1; |
||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
sin(x) cos(x); если x 2; |
||||||||||||||||||||
|
y |
|
|
|
|
|
|
|
|
|
1; если x 3; |
||||||||||
|
x2 |
|
|||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7;востальных случаях. |
||||||||||||||||||||
22 |
|
|
|
|
|
3 |
|
x |
2 |
|
5; если x 1; |
||||||||||
|
x |
|
|
|
|
|
|
|
|
||||||||||||
|
y 1; если x 2; |
||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1;востальных случаях. |
||||||||||||||||||||
23 |
x5 |
|
x; если x 1; |
||||||||||||||||||
|
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
; |
|
если x 2; |
|||||||||||||||||
|
|
||||||||||||||||||||
|
x |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
y |
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
; если x 3; |
|||||||||||||||
|
|
|
|
|
|
|
|
|
|
||||||||||||
|
x2 |
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
|
|
|
|
|
x5 x |
|
|
;востальных случаях. |
||||||||||||
|
|
|
|
|
|
||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
20
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Окончание табл. 2 |
|
24 |
ctg(x 5); если x 0или x 2; |
|
|||||||||||||||||||
|
|
|
|
|
|
|
|
|
если x 2; |
|
|
|
|||||||||
|
y 2.5; |
|
|
|
|||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1/(sin(x 5) 1);востальныхслучаях. |
|
|||||||||||||||||||
25 |
cos(x a); еслиx 1; |
|
|
||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
x |
; еслиx 2 |
или x 3или x 4 ; |
|
|||||||||
|
y 7 a |
|
|
|
|
||||||||||||||||
|
|
|
|
|
1 |
|
;востальныхслучаях. |
|
|||||||||||||
|
|
|
|
x |
|
||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
||||||||||||
26 |
c x2; еслиc 0; |
|
|
||||||||||||||||||
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
y |
|
|
|
|
|
|
|
|
; |
|
|
|
еслиc 0; |
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
(c x2 ) |
|
|
|
|
|
|
|
|
|
|||||||||||
|
|
0;если c 0. |
|
|
|
|
|||||||||||||||
|
|
|
|
|
|
||||||||||||||||
27 |
|
|
2 |
4 a c; еслиa 0; |
|
||||||||||||||||
|
b |
|
|
|
|
||||||||||||||||
|
y |
|
|
|
|
|
b2 |
|
|
|
|
;еслиa 0. |
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
(4 a c) |
|
|
|
|
||||||||||||||
|
|
|
|
|
|
|
|
||||||||||||||
28 |
|
|
|
|
|
|
1; еслиx 0; |
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
||||
|
y |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
ln(x) |
|
|
|
|
;еслиx 0. |
|
|
|||||||||||||
|
x |
|
|
||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
29 |
0; если x 0; |
|
|
|
|
||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
y x 3; если x 0; |
|
|
||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
| x a | b c |
;если |
x 0. |
|
|||||||||||||||
|
|
|
|
|
|
||||||||||||||||
30 |
c (x a) eb; еслиb 0; |
|
|||||||||||||||||||
|
y |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| x a| b c2;еслиb 0. |
|
||||||||||||||||||
|
|
|
|
||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
21 |
|
|
|
|
4.ЗАДАНИЕ № 3. СОЗДАНИЕ ГРАФИКА ФУНКЦИИ
Вданном задании требуется составить программу для расчета значений функций на определенном интервале, а также для построения графиков данных функций.
Главная форма программы должна состоять из двух закладок и иметь вид, приведенный на рис. 5 и 6 (приведена главная форма программы с активной первой и второй закладкой).
Рис. 5. Главная форма с активной первой закладкой
22
Рис 6. Главная форма с активной второй закладкой
Для создания закладок следует воспользоваться компонентом класса TPageControl (закладка Win32). Его следует разместить на форме, растащив компонент, можно задать нужный размер. С помощью контекстного меню можно создать на нем две закладки (пункт NewPage). Затем необходимо щелкнуть по имени закладки (например, по TabShit1) и по рабочей области закладки. Потом следует с помощью свойства Caption для каждой закладки задать поясняющую надпись, первую назвать «Функции», вторую - «Графики».
На первой закладке следует разместить компоненты следующих классов:
–TStringGrid (вкладка Additional) для отображения значений аргумента Х и функций Y1, Y2;
–TEdit (вкладка Standard) для создания полей ввода;
–TLabel (вкладка Standard) для создания поясняющих надписей;
23
–TButton (вкладка Standard) для создания кнопок Выход, Рассчитать.
На второй закладке следует разместить компонент TChart (вкладка Additional) для отображения графиков функций.
В программе должно быть реализовано следующее.
1) Задание параметров функций.
Пользователь должен иметь возможность задавать следующие параметры:
–значения коэффициентов и констант в уравнениях функций;
–начальное и конечное значения аргумента функции (т.е. интервал расчета);
–шаг изменения аргумента функции.
Ввод данных параметров должен осуществляться через компоненты типа TEdit.
2) Расчет значений функций на заданном интервале.
Все значения функций на заданном интервале должны быть выведены в таблицу, созданную с помощью компонента
StringGrid.
При установке таблицы на форму следует осуществить следующие настройки:
–свойства FixedRows (фиксированные строки) и FixedCols (фиксированные столбцы) установить в значение 1;
–свойство RowCount установить в значение 2;
–свойство ColCount установить в значение 4. Добавление заголовков в таблицу осуществляется про-
граммно. Например, для формы в целом в событии OnShow можно написать следующую процедуру:
StringGrid1.Cells [0,0]:='№ п/п'; StringGrid1.Cells [1,0]:=' x '; StringGrid1.Cells [2,0]:=' y1 '; StringGrid1.Cells [3,0]:=' y2 ';
24
Замечание: при указании номера ячейки сначала идет номер столбца, потом строки.
Занесение данных в таблицу тоже осуществляется программно с присвоением соответствующим ячейкам вычисленных значений.
3) Построение графиков функций согласно рассчитанным значениям.
Для компонента класса TChart после размещения на форме во второй закладке следует настроить следующие свойства:
–через контекстное меню вызвать редактор компонента (пункт Edit Chart) и добавить две серии (закладка 1-го уровня Chart, закладка 2-го уровня Series, кнопка Add, выбрать вид графика, например, Fast line); нажатие кнопки Add надо повторить два раза для каждого графика; затем нажать кнопки ОК и
Close;
–в свойствах компонента Chart через окно Инспектор объектов указать следующее:
–в группе свойств Title (щелчок по +) прописать заголовок «Графики функций» в свойстве Text, с помощью свойства Font можно задать шрифт;
–в группах свойств LeftAxis и BottomAxis (щелчок по кнопке +) прописать заголовки осей Y и X (подгруппа свойств Title, свойство Caption); с помощью свойства Font можно задать шрифт;
–по желанию можно отключить псевдотрехмерное изображение графика (свойство Viev3D) и настроить градиентную заливку (группа свойств Gradient).
Обозначения функций на легенду графика можно добавить в программе вычислений, например, следующим образом:
Chart1.SeriesList[0].Title:='y(x)=k*x+b';
Chart1.SeriesList[1].Title:='y(x)=a*x^2+c';
25
Здесь свойство SeriesList – список серий графика (т.е. первая серия имеет индекс 0, вторая 1 и т.д.).
Добавление точек на график осуществляется в программе через метод AddXY (добавляется точка с двумя координатами):
Chart1.SeriesList[0].AddXY(x1,k*x1+b);
Chart1.SeriesList[1].AddXY(x1,a*sqr(x1)+c);
Возможный текст программы для кнопки «Рассчитать» приведен ниже. В данной программе осуществляется:
-преобразование введенных данных в числа;
-вывод на графике названия линий;
-в цикле while расчет функций, вывод в таблицу номера, аргумента и рассчитанных функций с преобразованием их в строку, добавление точек на график, увеличение количества строк в таблице на единицу и увеличение аргумента функций на шаг.
var
a, b, c, d, y1, y2, x, xn, xk, xh : real; i : integer;
begin |
|
a := StrToFloat(Edit1.Text); |
b := StrToFloat(Edit2.Text); |
c := StrToFloat(Edit3.Text); |
d := StrToFloat(Edit4.Text); |
xn := StrToFloat(Edit5.Text); xk := StrToFloat(Edit6.Text); xh := StrToFloat(Edit7.Text);
x := xn; i := 1; Chart1.SeriesList[0].Title :='Y1'; Chart1.SeriesList[1].Title :='Y2'; while x <= xk do
begin
y1 := a*x*x+c;
y2 := b*sqrt(abs(x))+d; StringGrid1.Cells[0,i] := IntToStr(i); StringGrid1.Cells[1,i] := FloatToStr(x);
StringGrid1.Cells[2,i] := floatToStrF(y1,ffFixed,6,2); StringGrid1.Cells[3,i] := floatToStrF(y2,ffFixed,6,2);
26
Chart1.SeriesList[0].AddXY(x,y1);
Chart1.SeriesList[1].AddXY(x,y2); StringGrid1.RowCount := StringGrid1.RowCount + 1; i := i+1; x := x+ xh; end; end;
Возможный текст программы для кнопки «Очистить»
приведен ниже. |
|
|
|
var |
|
|
|
j, j1: integer; |
|
|
|
begin |
|
|
|
Edit1.Text := ''; |
Edit2.Text := ''; |
Edit3.Text := ''; |
|
Edit4.Text := ''; |
Edit5.Text := ''; |
Edit6.Text := ''; |
|
Edit7.Text := ''; |
|
|
|
j1 := StringGrid1.RowCount; |
|
|
|
StringGrid1.RowCount := 2; |
|
|
|
For j := 1 to j1 do |
|
|
|
begin |
|
|
|
StringGrid1.Cells[0,j] := ''; |
StringGrid1.Cells[1,j] := ''; |
||
StringGrid1.Cells[2,j] := ''; |
StringGrid1.Cells[3,j] := ''; |
||
end; |
|
|
|
end; |
|
|
|
Варианты задания по расчету функций и по построению графиков приведены в табл. 3.
Обе функции следует вывести на одном и том же графи-
ке.
Таблица 3
Варианты задания № 3
№ ва- |
Функция 1 |
|
Функция 2 |
||||||
рианта |
|
|
|
|
|
|
|
|
|
1 |
y(x)=a*x2+c |
|
y(x) b* |
|
|
|
|
|
d |
|
|
|
x |
|
|
||||
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
2 |
y(x)=a*x2+b*x+c |
|
y(x)=a*x+d |
|
|
|
|
|
|
3 |
y(x)=a*sin(x)+c |
|
y(x)=b*cos(x)+d |
||||||
4 |
y(x)=a*sin2(x)+b |
|
y(x)=c*cos2(x)+d |
||||||
|
|
27 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Продолжение табл. 3 |
||||||||||||||
5 |
y(x)=ax+b |
|
|
|
|
|
|
|
|
|
|
y(x)=cx2+d |
|
|||||||||||||||||
6 |
y(x)=a*sin2(x)+b*cos2( |
y(x)=c*sin(x)*cos(x)+d |
|
|||||||||||||||||||||||||||
|
x) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
7 |
y(x)=(x-a)*(x+b) |
y(x)=(x+c)*(x-d) |
|
|||||||||||||||||||||||||||
8 |
y(x) b* |
|
|
|
|
|
|
|
|
|
|
|
y(x) c*ln |
|
x |
|
d |
|
||||||||||||
|
|
|
x -a |
|
|
|
|
|||||||||||||||||||||||
|
|
|
|
|
|
|
|
|||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
9 |
y(x)=a*x2+b*ln|x| |
y(x)=c*ln(x)*x+d |
||||||||||||||||||||||||||||
10 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
y(x) a* |
|
x |
|
b |
y(x) c/ |
|
x d |
|
|
|
|
|
||||||||||||||||||
|
|
|
|
|
|
|
|
|||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||
11 |
y(x)=a*x2+b*x |
y(x)=c*x3+d*x2 |
||||||||||||||||||||||||||||
12 |
y(x)=a*x+b*x2+c*x3 |
y(x)=d*x2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||
13 |
y(x)=a*sin(x)+b*cos(x) |
y(x)=c*|sin(x)|+d*|cos(x |
|
|||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
)| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
14 |
y(x)=a*x+b*sin(x) |
y(x)=c*x+d*cos(x) |
|
|||||||||||||||||||||||||||
15 |
y(x)=a*x+b*sin2(x) |
y(x)=c*x+d*cos2(x) |
|
|||||||||||||||||||||||||||
16 |
y(x) = x4+x+a |
y(x) = x3-x2-a |
|
|||||||||||||||||||||||||||
17 |
y(x) = a/(x2+a) |
y(x) = (a+x)/x3 |
|
|||||||||||||||||||||||||||
18 |
|
a* |
|
|
|
|
|
|
|
|
|
|
y(x) c* |
|
|
|
|
|
|
d |
|
|||||||||
y(x) |
|
|
x |
|
b |
|
|
|
x |
|
|
|
||||||||||||||||||
|
|
|
|
|
|
|
||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
x |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
19 |
y(x)=a*x2+b*sin(x) |
y(x)=c*x2+d*cos(x) |
|
|||||||||||||||||||||||||||
20 |
y(x)=a*x2+b*ln(x) |
y(x)=a*x3+b*ln(x) |
|
|||||||||||||||||||||||||||
21 |
y(x)=a*x3+b |
y(x)=c*|x3|+d |
|
|||||||||||||||||||||||||||
22 |
y(x)=|a*x2+b*x+c| |
y(x)=d*x2-|x| |
|
|||||||||||||||||||||||||||
23 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
y(x) a* |
|
sin(x) |
|
|
b |
y(x) c* |
|
|
sin(x) |
|
|
d |
|
|||||||||||||||||
|
|
|
|
|
||||||||||||||||||||||||||
|
|
|
|
|||||||||||||||||||||||||||
24 |
y(x)=ln|x+a|+b |
y(x)=cos|x-c|+d |
||||||||||||||||||||||||||||
25 |
y(x)=(a+x3)/(x2+b) |
y(x)=(c+x4)/(x3+d) |
|
|||||||||||||||||||||||||||
26 |
y(x)=a*sin2(x)+b/x |
y(x)=c*cos2(x)+d/x |
|
|||||||||||||||||||||||||||
27 |
y(x)=a/x3+b/x2 |
y(x)=c/x4+d/x3 |
|
|||||||||||||||||||||||||||
28 |
y(x) = 1/x2+a |
y(x) = 1/x3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||
29 |
y(x) = sin(x2+a) |
y(x) = sin2(x+a) |
|
|||||||||||||||||||||||||||
30 |
y(x) = x3+a |
|
|
|
|
|
|
|
|
|
|
y(x) = (x+a)3 |
|
|||||||||||||||||
|
|
|
|
|
|
28 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|