Упр.3.67 ГДЗ Сборник упражнений Босова 7-9 класс (Информатика)
- В первый час работы рабочий изготавливает $$a$$ деталей, за каждый последующий час — на $$d$$ деталей больше, чем за предыдущий. Разработайте программу, которая подсчитывает, сколько деталей изготовил рабочий за $$k$$ часов работы. Зафиксируйте свои действия на каждом из этапов решения задачи.
Решим задачу по этапам.
Ход решения
1. Постановка задачи.
Исходные данные: $$a$$ — количество деталей за первый час работы; $$d$$ — приращение количества деталей каждый час; $$k$$ — количество часов работы.
Требуется найти: $$N$$ — количество деталей, изготовленных за $$k$$ часов работы.
2. Формализация.
Количество деталей по часам образует арифметическую прогрессию:
$$a,\ a+d,\ a+2d,\ \ldots,\ a+(k-1)d$$
Сумма первых $$k$$ членов:
$$N=\frac{(2a+d(k-1))\cdot k}{2}$$
Можно также вычислять сумму с помощью цикла.
3. Алгоритм с циклом.
Сначала положим $$N=0$$. Затем для каждого часа прибавляем к сумме количество деталей за этот час:
- $$N := N + a$$
- $$a := a + d$$
- $$k := k — 1$$
Повторяем действия, пока $$k \neq 0$$.
4. Программа.
program Z67;
var a, d, k, N: integer;
begin
write(‘Введи через пробел a, d, k > ‘);
readln(a, d, k);
N := 0;
repeat
N := N + a;
a := a + d;
k := k — 1;
until k = 0;
writeln(‘Количество деталей = ‘, N);
end.
5. Тестирование.
| № | a | d | k | Результат работы программы | Требуемый результат |
|---|---|---|---|---|---|
| 1 | 10 | 0 | 2 | 20 | 20 |
| 2 | 10 | 1 | 2 | 21 | 21 |
| 3 | 5 | 1 | 4 | 26 | 26 |
6. Вычисление.
При $$a=15$$, $$d=3$$, $$k=8$$:
$$N=\frac{(2\cdot 15+3\cdot(8-1))\cdot 8}{2}=\frac{(30+21)\cdot 8}{2}=\frac{51\cdot 8}{2}=204$$
Ответ
$$204$$





