|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
проблема с массивами
Доброе время суток
задача такова : Составить программу для обработки одномерных массивов. Для ввода исходных данных и записи полученных результатов расчета использовать компо-нент StringGrid. Ответ одиночных расчетов вывести с помощью компонента. вот что получилось Код:
procedure TForm1.Button4Click(Sender: TObject); var a:array[-4..1] of real; b:array[1..10] of real; begin for i:=(-4) to 1 do a[i]:=a[i]+0.5; begin if a[i]>=1 then b[i]:=sqr(a[i]+1)+7 else b[i]:=a[i]-2*exp((-5)*ln(a[i])); StringGrid1.Cells[1,1]:=b[i]; s:=b[i]*b[i]; StringGrid1.Cells[1,2]:=y1; f:=4-exp((-3)*ln(s)); StringGrid1.Cells[1,3]:=f; y1:=sqr(s)+2*a[i]+f; StringGrid1.Cells[1,4]:=s; end; в чём может быть ошибка? Последний раз редактировалось lmikle, 29.02.2012 в 08:20. |
#2
|
||||
|
||||
Просто переделал твой алгоритм, заменив на то что нужно (a[i] на (-4+i*0.5)), остальное не знаю что там
Код:
procedure TForm1.Button4Click(Sender: TObject); var a:array[-4..1] of real; b:array[1..10] of real; begin for i:=1 to 10 do begin if (-4+i*0.5)>=1 then b[i]:=sqr((-4+i*0.5)+1)+7 else b[i]:=(-4+i*0.5)-2*exp((-5)*ln((-4+i*0.5))); StringGrid1.Cells[i,1]:=b[i]; s:=b[i]*b[i]; StringGrid1.Cells[i,2]:=y1; f:=4-exp((-3)*ln(s)); StringGrid1.Cells[i,3]:=f; y1:=sqr(s)+2*(-4+i*0.5)+f; StringGrid1.Cells[i,4]:=s; end; end; |