C++Builder
  Начало   Форум   Помощь Войти Регистрация  
Страниц: [1]   Вниз
  Печать  
Автор Тема: Табулирование функции  (Прочитано 1985 раз)
alessio
новенький
*

Сказали спасибо: +0/-0
Offline Offline

Сообщений: 1


« : 06 апреля 2014, 13:48:08 »

Нужно протабулировать функцию y=-2.4*(x*x)+5*x-3 от -2 до 2 с шагом 0,5 и вывести результат в таблице в Memo. Первые x и y выводятся, но всю таблицу не выводит. Помогите разобратся. Код прилагается.

{
float a= StrToFloat(Edit1->Text);
float b= StrToFloat(Edit2->Text);
float h= StrToFloat(Edit3->Text);
float x=a;
float y=0;
int n=double((b-x)/h);
for(int h=1;h<=n;h++)
{
Extended y = - 2.4 * (x * x) + 5 * x - 3;
Memo1->Clear();
Memo1->Lines->Add("_x_   _y_");
Memo1->Lines->Add(FloatToStrF(x,ffFixed,7,2)+"  "+FloatToStrF(y,ffFixed,7,2));}
x=x+h;
}
Записан
Tantos
А ты воспользовался поиском перед тем, как спросить?!
Давний друг
**

Сказали спасибо: +350/-28
Offline Offline

Сообщений: 2181


« Ответ #1 : 07 апреля 2014, 01:59:07 »

Чего вы там курите на парах? Зачем в цикле очистка Memo1? Зачем объявлять тип переменной в цикле? Зачем тебе Extended, когда double хватит за глаза?
Код
Memo1->Lines->Clear();
double y = 0, x = -2;
for (; x <= 2; x += 0.5 )
{
y = - 2.4 * (x * x) + 5 * x - 3;
Memo1->Lines->Add("x=" + FloatToStr(x) + "\ty=" + FloatToStr(y));
}
 
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в: