Найти сумму членов арифметической прогрессии
15.04.2020
Найти сумму членов арифметической прогрессии, если известны ее первый член, разность и число членов прогрессии.
Для решения вспомним формулу суммы членов арифметической прогрессии:
Формула суммы членов арифметической прогрессии
Далее пишем простейшую программу:
program z_5; var a1, d, n, Sn: real; begin write('Введите первый член: '); read(a1); write('Введите разность: '); read(d); write('Введите число членов: '); read(n); Sn := ((2*a1+d*(n-1))/2)*n; writeln('Сумма членов: ', Sn); end.
Текст задачи:
Информатика. 10 класс. Базовый уровень. (Семакин И. Г., Хеннер Е. К., Шеина Т. Ю.)
Работа 3.1, Уровень 1, Задача №5
Автор:
0 / 0 / 0 Регистрация: 22.03.2013 Сообщений: 9 |
|
1 |
|
Найти сумму членов арифметической прогрессии11.04.2013, 22:18. Показов 12773. Ответов 1
Найти сумму членов арифметической прогрессии, если известны ее первый член, знаменатель и число членов прогрессии.
0 |
Programming Эксперт 94731 / 64177 / 26122 Регистрация: 12.04.2006 Сообщений: 116,782 |
11.04.2013, 22:18 |
1 |
CodeR Фрилансер 3417 / 2814 / 3000 Регистрация: 08.02.2012 Сообщений: 8,543 Записей в блоге: 1 |
||||
12.04.2013, 13:58 |
2 |
|||
Сообщение было отмечено orehh как решение Решение
0 |
Важно
Ученик
(81),
на голосовании
11 лет назад
Задача : вычеслить сумму первых N членов арифметической прогрессии зная величину первого члена и первый шаг.
Не понимаю чего то что найти надо.
Допустим у нас первый член 5 а шаг прогрессии 3 , прогрессию я себе представляю как 5, 8, 11, 14, 17, и т.д. мне нужно найти сумму их всех или что ?
допустим я вобью прогрессию в массив потом что делать ? Сложить путём:
for i:=o to n do
s:=s+a;
end;
?
Непонятно само условие задачи…
Голосование за лучший ответ
Евгений Ломега
Оракул
(67999)
11 лет назад
да все верно, можно и так, только в твоем случае
a := 5;
s:=0;
for i:=1 to n do
s:=s+a;
a := a+3;
end;
а можно по правилам арефм. прогрессии:
An=A0+k(n-1)
где k- шаг прогрессии
сумма s=(A0+An)*n/2 для четных n
и s=(A0+An-1)*(n-1)/2+An для нечетных n
Рамиль Насибуллин
Мастер
(1942)
11 лет назад
Да, ты всё понял правильно. Только перед началом цикла не забудь S занулить.
А вообще, проще сумму посчитать вообще без цикла, а по формуле “сумма арифметической прогрессии” из школьной программы:
S:= (2*a + d*(N-1))*N / 2
где S – искомая сумма,
a – первый член прогрессии,
d – шаг прогрессии
N – количество членов прогрессии
Узнай цену своей работы
Формулировка задачи:
Найти сумму членов арифметической прогрессии a, a+d ,…, a+(n-1)d по данным значениям a, d, n.
И блок схему.
Код к задаче: «Найти сумму членов арифметической прогрессии»
textual
Листинг программы
var a,d,n,i,s:integer; begin write('a='); read(a); write('d='); read(d); write('n>0 n='); read(n); if n=1 then s:=a else begin s:=a; for i:=2 to n do begin a:=a+d; s:=s+a end; end; write('Сумма=',s); end.
Напишите программу в паскале : найти сумму членов арифметической прогрессии , если известны ее первый член, разность и число членов прогрессии.
Вы находитесь на странице вопроса Напишите программу в паскале : найти сумму членов арифметической прогрессии , если известны ее первый член, разность и число членов прогрессии? из категории Информатика.
Уровень сложности вопроса рассчитан на учащихся 10 – 11 классов. На странице
можно узнать правильный ответ, сверить его со своим вариантом и обсудить
возможные версии с другими пользователями сайта посредством обратной связи.
Если ответ вызывает сомнения или покажется вам неполным, для проверки
найдите ответы на аналогичные вопросы по теме в этой же категории, или создайте
новый вопрос, используя ключевые слова: введите вопрос в поисковую строку,
нажав кнопку в верхней части страницы.