Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.06.2010, 11:37   #1
kta87
Форумчанин
 
Аватар для kta87
 
Регистрация: 22.02.2010
Сообщений: 912
Злость проблема в StringGrid

Доброго времени суток! Подскажите что не так пишу! Задача стостоит в том что бы определить сумму всех значений по Х, по У , сумму произведений Xi*Yi , сумму X^2. 2 дня голову ломаю уже
Код:
procedure TForm1.Button4Click(Sender: TObject);
 var
  i: integer;
  sX, sY, XY, X2: real;
begin
  sX:= 0;
  sY:= 0;
  XY:= 0;
  X2:= 0;
  for i:= 1 to Form1.StringGrid1.ColCount -1 do
    begin
     sX:= sX + strToFloat(Form1.StringGrid1.Cells[i,1]); //считаем сумму по Хi
     sY:= sY + strToFloat(Form1.StringGrid1.Cells[i,2]); //считаем сумму по Уi
     XY:= XY + (strToFloat(Form1.StringGrid1.Cells[i,1]))*
      (strToFloat(Form1.StringGrid1.Cells[i,2]));            //считаем сумму произведений Хi*Уi
     X2:= X2 + sqr(strToFloat(Form1.StringGrid1.Cells[i,1]));  //считаем сумму по Х^2(икс в квадрате)
kta87 вне форума Ответить с цитированием
Старый 12.06.2010, 13:22   #2
DomiNick
Студент, не
Старожил
 
Аватар для DomiNick
 
Регистрация: 29.01.2009
Сообщений: 2,067
По умолчанию

Надо наверное двумя циклами (вложенными)... Не вижу как одним обойтись...
А что значит Xi*Yi? Можно полностью задание или пример того что должно получаться?
I am the First of Cyber Evolution...
I am the First to Program your Future...
DomiNick вне форума Ответить с цитированием
Старый 12.06.2010, 14:06   #3
kta87
Форумчанин
 
Аватар для kta87
 
Регистрация: 22.02.2010
Сообщений: 912
По умолчанию

нет задания! я не студент)! программу пишу для нужд собственных , а теперь о том, что должно получиться:
имеется два столбца StringGrid , X & Y. пользователь водит сколько то значений соответсвтенно столбцам. программа должна найти:
- Сумму всех значений по X
- Сумму всех значений по Y
- Сумму произведений значений по Xi*Yi , где i - номер строки. (то есть не сложить все и перемножить, а: X1*Y1+X2*Y2+...+Xn*Yn)
- Сумму всех значений по X^2., (X1^2+X2^2+...+Xn^2)
Вобщем это подготовительная операция для МНК.
kta87 вне форума Ответить с цитированием
Старый 12.06.2010, 14:42   #4
DomiNick
Студент, не
Старожил
 
Аватар для DomiNick
 
Регистрация: 29.01.2009
Сообщений: 2,067
По умолчанию

ТЗ - Техническое Задание... Оно по идее ставится в начале любого проекта (не обязательно из задачника)...

Теперь понятно... Что-то вроде такого?:
Код:
procedure TForm1.FormCreate(Sender: TObject);
var i: integer;
begin
StringGrid1.Options:=[goFixedVertLine, goFixedHorzLine, goVertLine, goHorzLine, goRangeSelect, goEditing, goTabs, goAlwaysShowEditor];
StringGrid1.RowCount:=7;
StringGrid1.ColCount:=3;
StringGrid1.Cells[1, 0]:='X';
StringGrid1.Cells[2, 0]:='Y';
for i:=1 to StringGrid1.RowCount-1 do
      StringGrid1.Cells[0, i]:=IntToStr(i);
end;

procedure TForm1.Button1Click(Sender: TObject);
var i: integer; sX, sY, XY, X2: real;
begin
sX:=0;
sY:=0;
XY:=0;
X2:=0;
for i:=1 to StringGrid1.RowCount-1 do
      begin
      sX:=sX+StrToFloat(StringGrid1.Cells[1, i]);
      sY:=sY+StrToFloat(StringGrid1.Cells[2, i]);
      XY:=XY+StrToFloat(StringGrid1.Cells[1, i])*StrToFloat(StringGrid1.Cells[2, i]);
      X2:=X2+StrToFloat(StringGrid1.Cells[1, i])*StrToFloat(StringGrid1.Cells[1, i]);
      end;
Memo1.Text:='';
Memo1.Lines.Add(FloatToStr(sX));
Memo1.Lines.Add(FloatToStr(sY));
Memo1.Lines.Add(FloatToStr(XY));
Memo1.Lines.Add(FloatToStr(X2));
end;
Только надо бы проверку на пустые ячейки сделать, а то ругаться может...
I am the First of Cyber Evolution...
I am the First to Program your Future...
DomiNick вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема со StringGrid(Не прозрачное выделение)) sawer5 Общие вопросы C/C++ 0 04.04.2010 12:24
stringgrid Johny91 Помощь студентам 3 26.12.2009 21:01
Проблема со StringGrid. Не работает код. -=aHTPoПоС=- Помощь студентам 9 05.11.2009 16:07
Проблема выделения ячейки в StringGrid Velh Компоненты Delphi 5 23.10.2009 00:20
StringGrid Chudo4258 Помощь студентам 1 17.03.2009 09:24