![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Привет, мальчики помогите),
Вычислить первые n членов арифметической прогрессии и их сумму An=An-1+d , a1,d,n ввести с клавиатуры , заранее спасибо + еще каждый член и сумму нужно записать в поле MEMO , заранее спасиба) |
#2
|
||||
|
||||
![]() Цитата:
![]() Цитата:
Что-то терзают меня смутные сомнения что формула написана неправильно ![]() Имеется ввиду?- A(n)=A(n-1)+d? Тогда хоть напиши формулу для вичисления суммы n членов прогесии. S(n)=???; Насколько я помню, например сумма первых n=100 чисел будет равна n*(n+1)/2=100*101/2=10100/2=5050; И её вывел Гаусс, еще в школе, когда учитель задал задачку: посчитайте сумму первых 100 чисел, а я отойду - а тут не успел учитель выйти как Гаусс назвал ответ... Где-то так ![]() Что-то подобное будет и в твоем случае. Последний раз редактировалось Konrad, 07.02.2011 в 22:29. |
#3
|
||||
|
||||
![]() Вроде так, мальчик
![]() Код:
procedure TForm1.Button1Click(Sender: TObject); Var A: Array of Integer; d, n, Suma, i: Integer; begin Suma:= 0; d:= StrToInt(Edit2.Text); n:= StrToInt(Edit3.Text); SetLength(A, n); A[0]:= StrToInt(Edit1.Text); Memo1.Lines.Clear; Memo1.Lines.Add('1) ' + IntToStr(A[0])); For i:= 1 To n - 1 Do begin A[i]:= A[i-1] + d; Suma:= Suma + A[i]; Memo1.Lines.Add(IntToStr(i+1) + ') ' + IntToStr(A[i])); end; Memo1.Lines.Add('Сума = ' + IntToStr(Suma + A[0])); end; |