(a, b) , .
:
(b):
a0 b3 b2 b1 b0
():
a0 a1 a2 a3 b0
( b):
a0 a1 a2 a3 b3 b2 b1 b0
, . 0 bi.
.
a0 = _ _, _ _ ;
b0 = _ _, _ _ ;
= _, _ _ _ _ .
;
;
i- ;
.
:
, bi, , , Li;
, , ;
bi Li.
, ;
N .
, .
(. 7.10).
. 7.10.
. 7.6:
7.6
a0 | b0 | bi | bi-1 | Li | ||
a0 | b0 | bi | bi1 | li | eps |
.
#include <stdlib.h> /* */
#include <stdio.h> /* */
#include <conio.h>
#include <windows.h>
main() /* */
{
float a0, b0, bi, bi1, li, eps; /* */
char buf[50]; /* */
|
|
CharToOem(" a0, b0, eps: ",buf);
printf("\n %s \n",buf);
scanf("%f%f%f", &a0, &b0, &eps);
printf("a0 = %.4f b0 = %.4f eps =%.6f ", a0, b0, eps);
bi1 = b0; /* bi*/
printf("\n -------------------------------"
"\n | a0 | bi | li |"
"\n -------------------------------");
do
{
bi = a0 + (bi1 - a0)/2.; /* bi*/
li = bi - a0; /* li*/
printf("\n |%7.4f |%8.5f | %8.5f |", a0, bi, li);
bi1 = bi;
}while(li > eps); /* */
printf("\n -------------------------------\n");
getch();
}
13.5 29.43 0.01
13.5 29.43 0.001
.
7.9 (, ).
. a0, b0 e (EditA, Edit, EditEps). a0, bi, Li - (ListBox0, ListBoxBi, ListBoxLi).
|
|
|
|
|
|
, . .
.
#include <stdlib.h> /* */
#include <stdio.h> /* */
void TIterDlgClient::BNClickedOK() /* */
{
// INSERT>> Your code here.
float a0, b0, bi, bi1, li, eps; /* */
char buf[25]; /* */
ListBoxA0->ClearList(); /* */
ListBoxBi->ClearList(); /* - */
ListBoxLi->ClearList(); /**/
EditA->GetText(buf,10); /* */
a0=atof(buf); /* 0*/
EditB->GetText(buf,10); /* */
b0=atof(buf); /* b0*/
EditEps->GetText(buf,10); /* */
eps=atof(buf); /* eps*/
bi1 = b0; /* bi*/
do
{
bi = a0 + (bi1 - a0)/2.; /* bi*/
li = bi - a0; /* li*/
sprintf(buf,"%5.3f",a0); /* */
ListBoxA0->AddString(buf); /* a0*/
sprintf(buf,"%5.3f",bi); /* */
ListBoxBi->AddString(buf); /* bi*/
sprintf(buf,"%5.3f",li); /* */
ListBoxLi->AddString(buf); /* li*/
bi1 = bi;
}while(li > eps); /* */
}
13.5 29.43 0.01
13.5 29.43 0.001
.
! 8.
7.10 (, ).
, .
|
|
( ), ( ).
, .
.
, .
.
, .
.
.
.
( , . .).
?
?
() ?
?
?
?
?
?
() ?
?
?
?
, ?
?
?
?