![]() | |
|
Главная Радио и связь { ********************************************* МЕТОД ПОЛОВИННОГО ДЕЛЕНИЯ ДЛЯ ОПРЕДЕЛЕНИЯ ТОЧКИ МИНИМУМА ФУНКЩШ одной ПЕРЕШМОЙ program PlndMlnOfPuncByDlv; uses Grt; const к = 0.1; a,b,c,d,dl ,e,x1 ,x2,yl ,y2:real; ch:char; {--------------------------------------------------------- ПОДПРОГРАММЫ } procedure PAUSA; BEGIN WRITELN; WRITELN (Для продолжения нажмите любую клавишу...); REPEAT ch := readkey UNTIL ch <> "; END; (----------------------------------------------------------} rune tIon f(X:real);real; BEGIN Г 2*x*x - Ln(x); END; (------------------------------------------------------------ ОСНОВНАЯ ПРОГРАММА } BEGIN GIrScr; WRITELN ( Введите значения концов); WRITELN (отрезка [a,b] унимодальности функции f(x)*); READ (a, b); WRITELN (Задайте точность нахоадения точки mln f(x)); READ (e); REPEAT d := b - a; 3. Щхяршша повска иишакра функщш одной переменной методом половинного деления ва языке PASCAL 4. Программа поиска минимума функции одной переменной методе»! половинного деления на яыке FORTRAN INCLUDE: EXEC.FI С ********************************************* С МЕТОД ПОЛОВИННОГО ДЕЛЕНИЯ ДЛЯ ОПРЕДЕЛЕНИЯ С ТОЧКИ МИНИМУМА ФУНКЦИИ ОДНОЙ ПЕРЕМЕННОЙ С **#****#*#********#********#***************** program FlndMlnOfFuncByDlv INTEGER*2 system REAL к t (x)=2*x*x- LOG(x) l=system(clsG) WRITE (*,*) • Введите значения концов WRITE (*,*) отрезка [a,b] унимодальности функции Г(х) READ (*,*) а, b WRITE (*,*) Задайте точность нахождения точки mln f(x) READ (*,*) е ClrScr; WRITELN (Отрезок унимодальности [а,Ь]); WRITELN (а = ,3:9:6, b = ,Ъ:9:6); Fausa; с := (а + b) / 2; d1 := к ♦ (b - а) / 2; х1 := с - dl; х2 := с + dl; yl := f(x1); у2 := Г(х2); IP у1 < у2 THEN b := х2; IP yl > у2 THEN а := х1; IP у1 = у2 THEN BEGIN а := xl; b := х2; END; UNTIL d < e; WRITELN (T. минимума x = ,3:9:6, norp. = ,d:9:6); Pausa; END. 5. Программа поиска минимума функции одной переменной методом половинного деления на языке С /» «««*««««««**«««»««««««««««««««««»«««««*«*«««« МЕТОД ПОЛОВИННОГО ДЕЛЕНИЯ ДЛЯ ОПРЕДЕЛЕНИЯ ТОЧКИ МИНИМУМА ДЛЯ ФУНКЦИИ одной ПЕРИШНОИ ♦Include <stdlo.li> ♦include <conlo.h> ♦Include <math.n> WRITE (*,*) к = .1 й = 1 DO WHILE (d.GE.e) d = b - a l=system(clsG) WRITE (*,*) Отрезок унимодальности [а.ЬЗ WRITE (*,(A4,P9.6,A5,F9.6)) a =.a. b =. b PAUSE Назкмите клавишу ENTER для продолжения... с = (a + b) / 2 dt = к * (b - a) / 2 x1 = с - d1 x2 = с + d1 y1 = f(x1) у2 = I(x2) IF (y1.LT.y2) b = X2 IF (y1.GT.y2) a = x1 IF (yl.EQ.y2) THEN a = xl b = x2 END IP END DO WRITE (*,(A10,P9.6,A7,F9.6)) T. мин x=,a, norp.=.d PAUSE Нажмите клавишу ENTER для продолжения... 0 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 101 102 103 104 105 106 107 108 [ 109 ] 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 0.0075 |