Ph@ntom Posted November 4, 2008 Report Share Posted November 4, 2008 дан вектор ai,где i=1...n и число x. разработать процедуру, вычисляющую (a1*(1/x)+a2*(1/x2)+...+an*(1/xn))ex рядом с a индексы, а рядом с e и x степени. turbo delphi Link to comment Share on other sites More sharing options...
Тролль Posted November 4, 2008 Report Share Posted November 4, 2008 (edited) Ph@ntom: Есть среди всегда находящихся наверху "Важных" тем и тема Заказы "Сделайте все за меня", специально для таких поделок. Turbo Delphi под рукой для проверки нет, но так должно работать: program sum1;procedure sum(x:real; n:integer; a:array of real; var s:real);var i:integer; p:real;begin p:=1; for i:=1 to n do begin p:=p/x; s:=s+a[i]*p end; s:=s*exp(x) end;var a:array[1..100]of real; x,s:real; i,n:integer;beginWrite('n ? '); ReadLn(n);Write('x ? '); ReadLn(x);Write('элементы a (разделять пробелами, закончить Enter)? ');for i:=1 to n do Read(a[i]); ReadLn;sum(x,n,a,s); WriteLn('s=',s); ReadLn end. Edited November 4, 2008 by Тролль Link to comment Share on other sites More sharing options...
Ph@ntom Posted November 16, 2008 Author Report Share Posted November 16, 2008 Спасибо большое! Link to comment Share on other sites More sharing options...
Тролль Posted November 16, 2008 Report Share Posted November 16, 2008 Хм, не слишком большое. Посмотрел и заметил. что в 6-й строке вместо должно было быть [i-1]. Подправь, пожалуйста :) . Link to comment Share on other sites More sharing options...
Skif Posted November 17, 2008 Report Share Posted November 17, 2008 Дабы не создавать новую тему, пристроюсь тут. Понадобилось доработать одну свою прогрммку. Но давно не общался с Дельфином и многое, увы, подзабыл. Подскажите, пожалуйста, где я туплю с кодом. В упрощённом виде ситуация в следующем: Есть заполненный StringGrid. В первом столбце - нумерация. Второй - пуст. Третий заполнен числами. Есть кнопка. После клика по ней во втором столбце должен появиться "Х", если в ячейке справа (третий столбец) есть цифра "02", если нет - "0". И так далее вниз по столбцу. Я набросал следующий код: procedure TForm1.Button3Click(Sender: TObject); begin inc(gridX); if (StringGrid1.Cells [2,gridX] = '02') then begin StringGrid1.Cells [1, gridX]:= 'X'; end else begin StringGrid1.Cells [1, gridX]:= '0'; end; end; end; В таком виде после клика по кнопке "О" начинает печататься в третьей строчке снизу от последней заполненной в SG. Если заменить inc(gridX); на gridX:=0; печатать начинает правильно - с первой строчки, но, разумеется, только в этой строчке. Я уже эксперементировал и с: while (StringGrid1.Cells [1,0] <> '') and (StringGrid1.Cells [1,0+1] <> '') do inc(gridX); Но тут прога грузит оба ядра и зависает так, что диспетчер с трудом её закрывает. Но самое странное - не выполняется поставленное условие! Даже когда задаю gridX:=0;, рядом с "02" тупо печатается "0", хотя должен "Х". Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now