ВІКІСТОРІНКА
Навигация:
Інформатика
Історія
Автоматизація
Адміністрування
Антропологія
Архітектура
Біологія
Будівництво
Бухгалтерія
Військова наука
Виробництво
Географія
Геологія
Господарство
Демографія
Екологія
Економіка
Електроніка
Енергетика
Журналістика
Кінематографія
Комп'ютеризація
Креслення
Кулінарія
Культура
Культура
Лінгвістика
Література
Лексикологія
Логіка
Маркетинг
Математика
Медицина
Менеджмент
Металургія
Метрологія
Мистецтво
Музика
Наукознавство
Освіта
Охорона Праці
Підприємництво
Педагогіка
Поліграфія
Право
Приладобудування
Програмування
Психологія
Радіозв'язок
Релігія
Риторика
Соціологія
Спорт
Стандартизація
Статистика
Технології
Торгівля
Транспорт
Фізіологія
Фізика
Філософія
Фінанси
Фармакологія


Програма на мові Turbo Pascal.

Зауваження. Імена вхідного та вихідного файлів (без розширення) зручно складати таким чином:

[ім'я_файла]:=[G+група] + [V+варіант]+[L+вомер_лаб_роботи].

Наприклад, у наведеному прикладі файл з текстом програми і файл результатів можуть мати імена G3V33L1.pas і G3V33L1.out(тут G3-група 3, V33-варіант 33 і L1-лабораторна робота 1).

Текст програми

Program G3V33L1; {: G3V33L1.inp - вихідний текстовий файл

з рядком з трьох чисел через прогалини:

a b e,

де а, b - значення аргументiв, е - точність підрахунків.

G3V33L1.out --- текстовий файл з результатами}

const Ngraf=13; {загальне число рядкiв таблицi}

var all,dec,i: integer; {номер рядка таблицi}

a,b, {значення аргументів х, y}

e, {гранична абсолютна похибка аргументiв}

fplus,fminus, {iнтервал накриття точного значення}

a3: real; {корiнь кубiчнiй з числа а}

Z,AP,VP {поточнi значення виразiв, абсолютних та вiдносних похибок}

: array[1..Ngraf] of real;

finp,fout: Text; {вихідний файл та файл з результатами}

begin {G3V33L}

Assign(fout,'G3V33L1.out'); rewrite(fout); write(fout,'Start G3V33L1');

writeln(fout);write(fout,'Groop БIТ-3-09', ' Yablonska Olena');

writeln(fout);write(fout,'Variant 33 05.09.2009 ');

Assign(finp,'G3V33L1.inp'); reset(finp); readln(finp,a,b,e); Close(finp);

{ form input table}

i:=1; Z[i]:=3; AP[i]:=0; VP[i] :=AP[i]/abs(Z[i] ) ;

i:=2; Z[i] := a; AP[i] := e; VP[i] := AP[i]/abs(Z[i]) ;

i:=3; Z[i] := 2; AP[i]:= 0; VP[i] := AP[i]/abs(Z[i]);

i:=4; Z[i] := b; AP[i] := e; VP[i] := AP[i]/abs(Z[i] );

i:=5; Z[i] := 5; AP[i]:= 0; VP[i] := AP[i]/abs(Z[i] );

i:=6; if Z[2]>0 then Z[i] := exp(ln(Z[2])/3) else if Z[2]=0 then Z[i]:=0

else Z[i] := -exp(ln(-Z[2] )/3) ; VP[i]:=VP[2]/3; AP[i] := VP[i]*abs(Z [i]);

i:=7; Z[i] := sqr(Z[4]); VP[i] := 2*VP [4]; AP[i] := VP[i]*abs(Z[i]);

i:=8; Z[i] := sin(Z[4]); AP[i] := abs(cos(Z[4]))*AP[4] ; VP[i]:= AP[i]/abs(Z[i]);

i:=9; Z[i] := Z[6] *Z [3] ; VP[i] := VP[6]+VP [3] ; AP[i]:= VP[i]*abs(Z[i]);

i:=10; Z[i] := Z[5]-Z[8]; AP[i] := AP[5]+AP[8] ; VP[i]:= AP[i]/abs(Z[i]);

i:=11; Z[i] := Z[9]*Z[7] ;VP[i] := VP[9]+VP[7] ; AP[i] := VP[i]*abs(Z[i]);

i:=12; Z[i] := Z[1]+Z[11]; AP[i] := AP[i]+AP[11]; VP[i]:=AP[i]/abs(Z[i]);

if Z[10]=0

then begin {Z[10]=0} writeln(fout);

write(fout,'i=',i:3,' ERROR: ZERODIVIDE');

end {Z[10]=0}

else begin {Z[10]<>0}

i:=13; Z[i] := Z[12]/Z[10]; VP[i] := VP[12]+VP[10] ; AP[i]:=VP[i]*abs(Z[i]);

{ out table }

for i:=1 to Ngraf do begin

writeln(fout);write(fout,i:3,' ',Z[i],' ',AP[i],' ',VP[i]); end;

{ form "plus-minus"}

writeln(fout);write(fout,'f =',Z[Ngraf],' p/m ',AP[Ngraf]);

{ interval }

fminus := Z[Ngraf]-AP[Ngraf]; fplus := Z[Ngraf]+AP[Ngraf] ;

writeln(fout); write(fout,'f in [',fminus,',',fplus,']');

{ true digits}

a3 := 2*AP[Ngraf]; writeln(fout); write(fout,' 2 Delta =',a3);

end; {Z[10]<>0}

writeln(fout);write(fout,'Finish G3V33L1'); Close(fout);

end.{G3V33L1}

Вихідний файл

33.333 3.003 0.5e-3

Файл результатів

Start G3V33L1

Groop БIТ-3-09 Yablonska Olena

Variant 33 05.09.2009

1 3.0000000000E+00 0.0000000000E+00 0.0000000000E+00

2 3.3333000000E+01 5.0000000000E-04 1.5000150002E-05

3 2.0000000000E+00 0.0000000000E+00 0.0000000000E+00

4 3.0030000000E+00 5.0000000000E-04 1.6650016650E-04

5 5.0000000000E+00 0.0000000000E+00 0.0000000000E+00

6 3.2182872210E+00 1.6091597021E-05 5.0000500005E-06

7 9.0180090000E+00 3.0030000000E-03 3.3300033300E-04

8 1.3814939998E-01 4.9520570051E-04 3.5845664228E-03

9 6.4365744420E+00 3.2183194042E-05 5.0000500005E-06

10 4.8618506000E+00 4.9520570051E-04 1.0185539237E-04

11 5.8045086247E+01 1.9619261383E-02 3.3800038300E-04

12 6.1045086247E+01 1.9619261383E-02 3.2138969062E-04

13 1.2555936262E+01 5.3142382850E-03 4.2324508299E-04

f = 1.2555936262E+01 p/m 5.3142382850E-03

f in [ 1.2550622023E+01, 1.2561250500E+01]

2 Delta = 1.0628476570E-02

Finish G3V33L1

Висновки до лабораторної роботи. Аналізуючи одержані у лабораторній роботі результати бачимо, що

1) підрахунки з використанням похибки кожної дії та результати роботи програми співпадають з точністю до одного процента;

2) значення виразу може мати будь-який знак але відповідні абсолютні та відносні похибки знаходження значення функції завжди невід'ємні;

3) оцінка абсолютних та відносних похибок при знаходженні значень функції та її відповідних підвиразів будуть найліпшими оцінками зверху абсолютних та відносних похибок тому, що ураховуються похибки проміжних дій.

Варіанти індивідуальних завдань до роботи EvalExpr

1.

2.

3.

4.

5.

6.

7.

8.

9.

10.

11.

12.

13.

14.

15.

16.

17.

18.

19.

20.

21.

22.

23.

24.

25.

26.

27.

28.

29.

30.

31. .

32.

33.

34.

35.

36.

37.

38.

39.

40.

41.

42.

43.

44.

45.

46.

47.

48.

49.

50.

51.

52.

53.

54.

55.

56.

57.

58.

59.

60.

61.

62.

63.

64.

65.

66.

67.

68.

69.

70.

71.

72.

73.

74.

75.

76.

77.

78.

79.

80.

81.

82.

83.

84.

85.

86.

87.

88.

89.

90.

91.

92.

93.

94.

95.

96.

97.

98.

99.

100.

2. Лабораторна робота DetKram на тему “Розв’язання СЛР за формулами Крамера”

Завдання. Для даної системи лінійних рівнянь (СЛР) знайти розв’язок за допомогою формул Крамера. Провести перевірку знайденого розв’язку.

Хід виконання. Для заданої системи лінійних рівнянь:

1) Записати СЛР у вигляді розширеної матриці системи.

2) Знайти головний та допоміжні визначники і знайти розв’язок СЛР за допомогою формул Крамера. Виконати перевірку знайденого розв’язку.

3) Знайти розв’язок СЛР з цілими коефіцієнтами за допомогою стандартної програми на ЕОМ або написати власну програму розв’язання.

4) Оформити звіт та захистити лабораторну роботу.

Теоретичні питання

1. Лінійний векторний простір. Аксіоми лінійного векторного простору.

2. Лінійна оболонка, лінійна залежність і незалежність системи векторів.

3. Базис системи векторів. Базис лінійного простору. Розмірність лінійної оболонки і розмірність векторного простору.

4. Зв'язок між матрицями змін базисів і матрицями змін координат.

5. Ранг системи векторів. Методи знаходження рангу системи векторів.

6. Рядковий і стовпцевий ранги матриць. Ранг матриці. Знаходження рангу матриці за методом обвідних (рос. окаймляющих) визначників.

7. Система лінійних рівнянь. Головна та розширена матриці системи. Сумісність і несумісність СЛР. Теорема Кронекера-Капелі.

8. Однорідна і неоднорідна СЛР. Лінійний простір розв’язків одорідної системи. Структура множини розв’язків неоднорідної СЛР.

9. Головний і допоміжні визначники квадратної СЛР. Формули Крамера. Необхідні та достатні умови використання формул Крамера.

Приклад виконання роботи DetKram

Лабораторна робота DetKram на тему “Знаходження точних розв’язків СЛР за формулами Крамера”

Варіант 33. Виконав студент групи БІТ-3-05 Петров Олексій Васильович. Дата виконання: 05.10.2005.

Завдання. Розв’язати систему лінійних рівнянь

(1.2.1)

За допомогою формул Крамера. Провести перевірку знайденого розв’язку.

Виконання роботи. Систему (1.2.1) можна записати у матричному вигляді:

(1.2.2)

або , де вектор-рядок невідомих, вектор-рядок правої частини, - головна матриця системи. Тут через позначаємо операцію побудови транспонованої матриці ( ).

1.Знаходження головного та допоміжних визначників.

, ,

, ,

, .

Використовуючи додаток Windows InteractiveDet, одержуємо:

, , , , ,

2. Знаходження вектора розв'язку за формулами Крамера.Головний визначник . Тому система (1.2.1) сумісна і існує єдиний її розв'язок. За формулами Крамера маємо:

, , , , .

3. Перевірка знайденого вектора розв'язку. Перевірку знайденого вектора розв'язку здійснюємо підстановко знайдених значень невідомих у ліві частини рівнянь системи і одержання значень правих частин. При маємо:

1) ;

2) ;

3) ;

4) ;

5) .

Отже, праві частини рівнянь системи дорівнюють лівим частинам. Тому дійсно є розв'язком системи (1.2.1). Перевірка здійснена.

Висновки до лабораторної роботи.Точні розв'язні CЛP з цілими коефіцієнтами мо­жуть бути числами не цілими, але, як це бачимо з формул Крамера, є завжди дробові числа. При перевірці одержаного розв'язку потрібно вести точні (без заокруглювань) підрахунки з дробами (у вигляді чисельник/знаменник), щоб одержати при підстановці точні рівності правих і лівих частин СЛР.

Варіанти індивідуальних завдань до роботи DetKram

Для кожного варіанта наведено розширену матрицю СЛР.

1. 2.
3. 4.
5. 6.
7. 8.
9. 10.
11. 12.
13. 14.
15. 16.
17. 18.
19. 20.
21. 22.
23. 24.
25. 26.
27. 28.
29. 30.
31. 32.
33. 34.
35. 36.
37. 38.
39. 40.
41. 42.
43. 44.
45. 46.
47. 48.
49. 50.
51. 52.
53. 54.
55. 56.
57. 58.
59. 60.
61. 62.
63. 64.
65. 66.
67. 68.
69. 70.
71. 72.
73. 74.
75. 76.
77. 78.
79. 80.
81. 82.
83. 84.
85. 86.
87. 88.
89. 90.
91. 92.
93. 94.
95. 96.
97. 98.
99. 100.

© 2013 wikipage.com.ua - Дякуємо за посилання на wikipage.com.ua | Контакти