ТОП 10:

Программа вычисления функции с выводом результата в файл с расширение .txt



 

program AlexeevTab;

{$APPTYPE CONSOLE}

uses

SysUtils,

Math;

 

var

a,xn,xk,deltax,x,y:real;

t:text;

begin

Assignfile(t,'AlexeevTab.txt');

rewrite(t);

a:=2;

xn:=-10;

xk:=10;

deltax:=0.2;

x:=xn;

while x<=xk do

begin

If (x<a+2) then

y:=(a*sqr(x)*(x+1)+a*x)/(1+x*x+x)

else

y:=1+x/(1+x/(1+x/2));

writeln(t,x:2:2,' ',y:2:2);

x:=x+deltax;

end;

closefile(t);

end.

 


Таблица результатов

 

Таблица 1.3. Результат работа программы (файл Alexeev.txt)

 


-10.00 -20.00

-9.80 -19.60

-9.60 -19.20

-9.40 -18.80

-9.20 -18.40

-9.00 -18.00

-8.80 -17.60

-8.60 -17.20

-8.40 -16.80

-8.20 -16.40

-8.00 -16.00

-7.80 -15.60

-7.60 -15.20

-7.40 -14.80

-7.20 -14.40

-7.00 -14.00

-6.80 -13.60

-6.60 -13.20

-6.40 -12.80

-6.20 -12.40

-6.00 -12.00

-5.80 -11.60

-5.60 -11.20

-5.40 -10.80

-5.20 -10.40

-5.00 -10.00

-4.80 -9.60

-4.60 -9.20

-4.40 -8.80

-4.20 -8.40

-4.00 -8.00

-3.80 -7.60

-3.60 -7.20

-3.40 -6.80

-3.20 -6.40

-3.00 -6.00

-2.80 -5.60

-2.60 -5.20

-2.40 -4.80

-2.20 -4.40

-2.00 -4.00

-1.80 -3.60

-1.60 -3.20

-1.40 -2.80

-1.20 -2.40

-1.00 -2.00

-0.80 -1.60

-0.60 -1.20

-0.40 -0.80

-0.20 -0.40

-0.00 -0.00

0.20 0.40

0.40 0.80

0.60 1.20

0.80 1.60

1.00 2.00

1.20 2.40

1.40 2.80

1.60 3.20

1.80 3.60

2.00 4.00

2.20 4.40

2.40 4.80

2.60 5.20

2.80 5.60

3.00 6.00

3.20 6.40

3.40 6.80

3.60 7.20

3.80 7.60

4.00 8.00

4.20 2.78

4.40 2.85

4.60 2.92

4.80 2.99

5.00 3.06

5.20 3.13

5.40 3.20

5.60 3.26

5.80 3.33

6.00 3.40

6.20 3.47

6.40 3.54

6.60 3.60

6.80 3.67

7.00 3.74

7.20 3.81

7.40 3.87

7.60 3.94

7.80 4.01

8.00 4.08

8.20 4.14

8.40 4.21

8.60 4.28

8.80 4.35

9.00 4.41

9.20 4.48

9.40 4.55

9.60 4.62

9.80 4.68

10.00 4.75



Результат вычислений в Excel

 

Таблица 1.4 Результат вычислений в Excel

 

X Y         a    
-10,00 -20,00            
-9,80 -18,75              
-9,60 -17,55              
-9,40 -16,41         DX
-9,20 -15,32         -10 0,2
-9,00 -14,28              
-8,80 -13,29              
-8,60 -12,35              
-8,40 -11,46              
-8,20 -10,61              
-8,00 -9,81              
-7,80 -9,05              
-7,60 -8,33              
-7,40 -7,65              
-7,20 -7,01              
-7,00 -6,40              
-6,80 -5,84              
-6,60 -5,31              
-6,40 -4,81              
-6,20 -4,35              
-6,00 -3,92              
-5,80 -3,51              
-5,60 -3,14              
-5,40 -2,80              
-5,20 -2,48              
-5,00 -2,19              
-4,80 -1,92              
-4,60 -1,68              
-4,40 -1,45              
-4,20 -1,25              
-4,00 -1,07              
-3,80 -0,91              
-3,60 -0,77              
-3,40 -0,64              
-3,20 -0,53              
-3,00 -0,43              
-2,80 -0,34              
-2,60 -0,27              
-2,40 -0,21              
-2,20 -0,16              
-2,00 -0,12              
-1,80 -0,09              
-1,60 -0,06              
-1,40 -0,04              
-1,20 -0,03              
-1,00 -0,02              
-0,80 -0,01              
-0,60 -0,01              
-0,40 -0,01              
-0,20 0,00              
0,00 0,00              
0,20 0,00              
0,40 0,01              
0,60 0,02              
0,80 0,04              
1,00 0,06              
1,20 0,09              
1,40 0,12              
1,60 0,16              
1,80 0,21              
2,00 0,27              
2,20 0,34              
2,40 0,43              
2,60 0,52              
2,80 0,63              
3,00 0,75              
3,20 0,89              
3,40 1,04              
3,60 1,21              
3,80 1,40              
4,00 2,71              
4,20 2,78              
4,40 2,85              
4,60 2,92              
4,80 2,99              
5,00 3,06              
5,20 3,13              
5,40 3,20              
5,60 3,26              
5,80 3,33              
6,00 3,40              
6,20 3,47              
6,40 3,54              
6,60 3,60              
6,80 3,67              
7,00 3,74              
7,20 3,81              
7,40 3,87              
7,60 3,94              
7,80 4,01              
8,00 4,08              
8,20 4,14              
8,40 4,21              
8,60 4,28              
8,80 4,35              
9,00 4,41              
9,20 4,48              
9,40 4,55              
9,60 4,62              
9,80 4,68              
10,00 4,75              
                 
0,00 -124,62 Сумма            
Произведение            
-10,00 -20,00 Мин            
10,00 4,75 Макс            

 

 

f(x) = =ЕСЛИ($A2<$G$2+2;($G$2*$A2^2*($A2+1)+$G$2*$A2)/(1+$A$2^2+$A2);1+$A2/(1+$A2/(1+$A2/2)))


График функции (в приложении Excel)

 

 

 

 

Рис.1.5.1. График функции в приложении Excel

 

 

 

 

Рис.1.5.2. График функции в приложении Excel. Точка разрыва


Столбчатая и круговая диаграммы по результатам таблицы в приложении Excel

 

 

Рис.1.6.1. График функции приложения Excel. в виде гистограммы

 

 

 

Рис.1.6.2. График функции приложения Excel. в виде круговой диаграммы


Случайные величины

2.1 С помощью генератора случайных чисел Random в Delphi составить последовательность из более чем 40 случайных чисел (согласно варианту задания). Результат выполнения программы вывести в файл с расширением …1.txt.

2.2 Полученную последовательность проверить на статистическую устойчивость: рассчитать возрастающим итогом математическое ожидание M. Его оценка производится по формуле

 

 

Построить график M=f(i) , где i =1..n.

2.3 Для всей последовательности полученной в пункте 2.1. рассчитывается дисперсия, среднеквадратическое отклонение, ассиметрия, эксцесс.

2.4 Определить границы изменения случайных чисел (Min и Max). Разбить полученный интервал на N равных частей; определить, сколько чисел попало вкаждую из частей (программа Delphi). Результат расчета вывести в файл ...2.txt. (Исходные данные берутся из файла …1.txt).

2.5 По результатам пункта 2.4. построить гистограмму распределения.

Примечание:

Пункты 2.1, 2.4. выполняются в Delphi.

Пункты 2.2, 2.3, 2.5 выполняются средствами Excel.


Текст программы Random и результаты ее работы

 

Программа, составляющая последовательность случайных чисел с выводом результатов в файл с расширением .txt.

 

program AlexeevRandom;

{$APPTYPE CONSOLE}

uses

SysUtils,

Math;

 

var i:integer;

x:real;

t:text;

begin

Assignfile(t,'Alexeev1Random.txt');

rewrite(t);

Randomize;

for i:=1 to 50 do

begin

x:=random(40)+random (60)*0.5 - random (80)*0.4;

writeln(t,x:2:2);

end;

closefile(t);

end.


Результаты работы программы п.2.1.1 (Random)

 

Таблица 2.1.2.Текстовый файл Alexeev1Random.txt

 


12.70

34.80

23.20

27.30

28.20

10.10

40.20

33.50

22.30

23.10

22.10

4.70

20.10

-1.00

-7.70

12.50

26.70

-0.20

32.00

9.00

44.10

14.70

22.60

60.80

29.50

18.50

39.50

1.60

16.50

42.40

1.50

30.00

27.90

42.40

23.40

42.90

-3.80

26.60

39.60

3.90

22.00

22.40

12.30

22.40

56.70

15.50

29.40

36.70

-4.10

14.00



Проверка на статистическую устойчивость: математическое ожидание

 

 

 

Рис. 2.2. График математического ожидания

 

 

Вывод: последовательность статистически устойчива, т.к. она стремится к постоянному числу.


Расчет дисперсии, СКВО, ассиметрии, эксцесса для последовательности п.2.1

 

Таблица 2.3. Дисперсия, СКВО, ассиметрия, эксцесс

 

Random Мат.Ожид. Дисперсия СКВО
12,7 12,70   241,63 15,54
34,8 23,75      
23,2 23,57   Ассиметрия Эксцесс
27,3 24,50   0,14 -0,16
28,2 25,24      
10,1 22,72      
40,2 25,21      
33,5 26,25      
22,3 25,81      
23,1 25,54      
22,1 25,23      
4,7 23,52      
20,1 23,25      
-1 21,52      
-7,7 19,57      
12,5 19,13      
26,7 19,58      
-0,2 18,48      
19,19      
18,68      
44,1 19,89      
14,7 19,65      
22,6 19,78      
60,8 21,49      
29,5 21,81      
18,5 21,68      
39,5 22,34      
1,6 21,60      
16,5 21,43      
42,4 22,13      
1,5 21,46      
21,73      
27,9 21,92      
42,4 22,52      
23,4 22,54      
42,9 23,11      
-3,8 22,38      
26,6 22,49      
39,6 22,93      
3,9 22,46      
22,44      
22,4 22,44      
12,3 22,21      
22,4 22,21      
56,7 22,98      
15,5 22,82      
29,4 22,96      
36,7 23,24      
-4,1 22,68      
22,51      

 


Границы интервала случайных чисел

 

Программа, выполняющая разбиение диапазона случайных чисел на 6 равных частей и определяющая их количество в этих промежутках с выводом результатов в файл с расширением .txt

 

program AlexeevRandomIntervals;

{$APPTYPE CONSOLE}

uses

SysUtils,

Math;

 

Type Mas1=array[1..50] of real;

Const N=6;

Var x:Mas1;

i,kol_vo:integer;

max,min,step,min1,max1:real;

f,t:text;

begin

Assignfile(t,'Alexeev1Random.txt');

rewrite(t);

Assignfile(f,'AlexeevRandomIntervals.txt');

rewrite(f);

Randomize;

for i:=1 to 50 do

begin

x[i]:=random(40)+random (60)*0.5 - random (80)*0.4;

writeln(t,x[i]:2:2);

end;

 

min:=x[1]; max:=x[1];

for i:=2 to 50 do

begin

if x[i]<min then min:=x[i];

if x[i]>max then max:=x[i];

end;

step:=(max-min)/N;

min1:=min;

max1:=min+step;

while max1<=max do

begin

kol_vo:=0;

for i:=1 to 50 do

begin

if (x[i]>=min1) and (x[i]<=max1) then

kol_vo:=kol_vo+1;

end;

writeln(f,min1:2:2,'..',max1:2:2,' ',kol_vo);

min1:=max1;

max1:=max1+step;

end;

closefile(t);

closefile(f);

end.


Результаты работы программы п.2.4.1 (интервалы)

 

Таблица 2.4.2. Результаты определения границ интервала, текстовый файл AlexeevRandomIntervals.txt

 

-7.70..3.72
3.72..15.13
15.13..26.55
26.55..37.97
37.97..49.38
49.38..60.80

 


Гистограмма распределения по результатам п. 2.4.

 

 

 

Рис. 2.5. Гистограмма распределения случайных чисел


Заключение

 

Результаты работы полностью соответствуют заданию. Разработаны программные коды, построены графики, приведены результаты вычислений в виде таблиц.


Литература

 

1. Додж М., Кайнет К. Эффективная работа с EXCEL 7.0, СПб: Питер, 1997.

2. MICROSOFT CORP, Ресурсы MICROSOFT OFFICE, M. PRESS, 1997.

3. Персон Р. EXCEL для WINDOWS 95.СПб: BHV – Санкт-Петербург, 1996.

4. Гроздова В.А. Введение в специальность программиста. М.: ИД ФОРУМ – ИНФРА-М, 2007.

5. Бобровский С. Delphi 5:учебный курс. СПб:Питер, 2001


Приложение

 

Для того, чтобы иметь возможность строить графики функций, получаемых в результате вычислений по соответствующим программам на языке Delphi 7, с использованием приложения EXCEL, нужно числовые данные расчета из программы DELPHI переслать в файл с расширением .txt, который может быть создан пользователем ранее.

Для этого в программе DELPHI должно быть выполнено следующее:

- в разделе описания переменных должна быть описана текстовая переменная, например (F: text);

- после начало главной программы должно следовать обращение к стандартным процедурам

assignfile(F,'File.txt')

………………..

……………….. (операторы программы)

………………..

writeln(F,…)

- перед последней в программе операторной скобкой “end”. Записывается стандартная процедура closefile (F);

- стандартная процедура assignfile (F,'File.txt')связывает текстовую переменную F с некоторым именем файла .txt.

- стандартная процедура rewrite создает новый файл и открывает его для записи и чтения. Если файл с таким именем уже существует, его содержимое стирается, а сам файл открывается заново. Например, оператор rewrite(F); открывает существующий файл, связанный с текстовой переменной F. Стандартная процедура closefile закрывает открытый ранее файл, связанный с указанной в качестве параметра текстовой переменной. Например, оператор closefile (F) закрывает файл, имя которого связано с текстовой переменной F.

 







Последнее изменение этой страницы: 2016-09-20; Нарушение авторского права страницы

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.234.244.18 (0.031 с.)