Упр.3.67 ГДЗ Сборник упражнений Босова 7-9 класс (Информатика)
Первый этап – постановка задачи.
Исходные данные:
a – количество деталей за первый час работы;
d – приращение количества деталей каждый час;
k – количество часов работы.
Требуется найти:
N – количество деталей, изготовленных за k часов работы.
Второй этап – формализация.
Есть два способа решения данной задачи:
а) воспользоваться формулой суммы арифметической прогрессии – N = (2a + d*(k — 1))2 * k
б) выполнить вычисления с использованием цикла.
Далее, разработаем алгоритм с циклом.
В первый час работы: N = a.
В последующие часы работы:
a: = a + d; k = k-1; N = N + a
Вычисления закончатся, когда k станет равным 0.
Третий этап – разработка алгоритма.
Четвертый этап – разработка программы.
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.
Пятый этап – тестирование.
Шестой этап – вычисление.
При a = 15, d = 3, k = 8
N = 204
Результат: 204
Пусть за первый час рабочий изготавливает $$a$$ деталей, а каждый следующий час — на $$d$$ деталей больше, чем в предыдущий. Тогда количество деталей по часам образует арифметическую прогрессию.
Сумма за $$k$$ часов может быть найдена по формуле:
$$N=\frac{(2a+d\cdot(k-1))\cdot k}{2}$$
Можно также решить задачу с помощью цикла. Тогда:
- в первый час $$N=a$$;
- затем каждый раз прибавляем к сумме текущее значение $$a$$;
- после этого увеличиваем $$a$$ на $$d$$ и уменьшаем $$k$$ на 1;
- повторяем, пока $$k=0$$.
Программа на Pascal:
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.
Проверим на примере $$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$$