1 Востаннє редагувалося Bartash (27.03.2013 11:10:47)

Тема: Реалізація задаі пошуку екстремумів за двома змінними!!!

Допоможіть будь ласка!В мене є код для одної змінної ,треба переробити для двох

Ось код для одної:

void __fastcall TForm1::Button1Click(TObject *Sender)
{ bool pas=true; Memo1->Clear();
if (pas==true) {
if (Edit1->Text.ToDouble()>Edit2->Text.ToDouble()) {
Memo1->Lines->Add("̳í³ìóì íå ïîâèíåí áóäå ìåíüøèì çà ìàêñèìóì"); pas=false;
} }
if (pas==true) {
if (Edit1->Text.ToDouble()>10000) { Memo1->Lines->Add("Ïåðåâèùåíèé äîïóñòèìèé ä³àïàçîí çíà÷åíü ì³í³ìàëüíîãî êîðäîíó");
pas=false;
} }
if (pas==true) {
if (Edit2->Text.ToDouble()>10000) { Memo1->Lines->Add("Ïåðåâèùåíèé äîïóñòèìèé ä³àïàçîí çíà÷åíü ìàêñèìàëüíîãî êîðäîíó");
pas=false;
} }
if (pas==true) {
float g=Edit3->Text.ToDouble();
if ((Edit2->Text.ToDouble()-Edit1->Text.ToDouble()/2)<g) {
Memo1->Lines->Add("Çàíàäòî âåëèêå çíà÷åííÿ êðîêó"); pas=false;
}
}
if (pas==true) { double c=-0.00001;
if (Edit3->Text.ToDouble()<c) { Memo1->Lines->Add("Çàíàäòî ìàëå çíà÷åííÿ êðîêó");
pas=false;
} }
if (pas==true) {

Series1->Clear(); Memo1->Clear(); Series2->Clear(); Series3->Clear();

float a,b,h,rez1,rez2,min=0,max=0,x1,y1;

a=Edit1->Text.ToDouble();
b=Edit2->Text.ToDouble();
h=Edit3->Text.ToDouble();
float x = a;
while(x + h <= b)
{
rez1=f(x); rez2=df(x);
if (f(x)<min) {min=f(x);x1=x;} if (f(x)>max) {y1=x;max=f(x);}

Series1->AddXY(x,rez1);
x += h;
}
Memo1->Lines->Add("Min="+String(min)+" max="+String(max));
Series3->AddXY(x1,min);
Series2->AddXY(y1,max);
Memo1->Lines->Add("Min = "+String(min)+"  òî÷êå - "+x1);
Memo1->Lines->Add("Max = "+String(max)+"  òî÷êå - "+y1);
Memo1->Lines->Add(" ");
}

Bartash: код має братися у теги [ code ].

Re: Реалізація задаі пошуку екстремумів за двома змінними!!!

Для початку візьміть код у теги [ code ] [ /code ] (без пробілів)
По можливості відформатуйте код, і виправіть оці ваші караказябри.