ВУЗ:
Составители:
Рубрика:
105
s:=s+z*i { прибавляем к сумме очередное слагаемое с учетом знака}
end;
{ фрагмент 13 }
s:=0; { начальное значение суммы }
z:=1; { начальное значение знака + }
zk:=1; { начальное значение счетчика группы слагаемых }
for i:=1 to n do { цикл выполняется n раз }
begin s:=s+z*i; { прибавляем к сумме очередное слагаемое с учетом знака }
zk:=zk+1; { увеличиваем значение счетчика группы слагаемых }
if zk=3 { если счетчик группы слагаемых равен трем, }
then begin zk:=0; { то сбрасываем счетчик
в ноль }
z:=-1 { знак очередного слагаемого - }
end
else z:=1 { иначе знак очередного слагаемого + }
end;
10.6. Способы уяснения действий, составляющих тело цикла
Пример 10.13. Написать программу для вычисления выражения y =
k(k+1)(k+2)...2k.
Решение. В данном примере исходным данным является k. Выражение
представляет собой произведение. Перепишем его так, чтобы все сомножители
имели одинаковую форму: (k+0)(k+1)(k+2)...(k+k). Исходя из этой формы, можно
установить, что отыскивается произведение сомножителей. Чтобы установить
общий вид сомножителя заметим, что каждый сомножитель содержит переменную
k, к которой прибавляется некоторое натуральное число. Это число меняется от
сомножителя к сомножителю, поэтому обозначим его переменной i. Отсюда общий
вид сомножителя: (k+i), где i - изменяется от 0 до k. В теле цикла повторяется
оператор вида y:=y*(k+i). Известно, что тело цикла должно выполниться k раз,
следовательно, нужно построить арифметический цикл.
{ фрагмент 14 }
y:=1; {начальное значение произведения}
for i:=0 to k do y:=y*(k+i).
В данном примере использовался прием нахождения формулы общего члена на
основе анализа
структуры сомножителей.
Упражнения:
1.Используйте рассмотренный выше прием для вычисления значений по
формулам:
1) y=(k+m)(k+2m)...(k+m
2
);
2) y=(k+3)(2k+6)(3k+9)..., всего в этой формуле должно быть n
сомножителей.
2. Решите пример 10.13 и упражнения к нему, заменив умножение на сложение.
3. Придумайте еще примеры, которые решались бы аналогично.
Пример 10.14. Вычислить значение выражения: y=cos(1+cos(2+...+cos(n-
1+cos(n)...)).
105
s:=s+z*i { прибавляем к сумме очередное слагаемое с учетом знака}
end;
{ фрагмент 13 }
s:=0; { начальное значение суммы }
z:=1; { начальное значение знака + }
zk:=1; { начальное значение счетчика группы слагаемых }
for i:=1 to n do { цикл выполняется n раз }
begin s:=s+z*i; { прибавляем к сумме очередное слагаемое с учетом знака }
zk:=zk+1; { увеличиваем значение счетчика группы слагаемых }
if zk=3 { если счетчик группы слагаемых равен трем, }
then begin zk:=0; { то сбрасываем счетчик в ноль }
z:=-1 { знак очередного слагаемого - }
end
else z:=1 { иначе знак очередного слагаемого + }
end;
10.6. Способы уяснения действий, составляющих тело цикла
Пример 10.13. Написать программу для вычисления выражения y =
k(k+1)(k+2)...2k.
Решение. В данном примере исходным данным является k. Выражение
представляет собой произведение. Перепишем его так, чтобы все сомножители
имели одинаковую форму: (k+0)(k+1)(k+2)...(k+k). Исходя из этой формы, можно
установить, что отыскивается произведение сомножителей. Чтобы установить
общий вид сомножителя заметим, что каждый сомножитель содержит переменную
k, к которой прибавляется некоторое натуральное число. Это число меняется от
сомножителя к сомножителю, поэтому обозначим его переменной i. Отсюда общий
вид сомножителя: (k+i), где i - изменяется от 0 до k. В теле цикла повторяется
оператор вида y:=y*(k+i). Известно, что тело цикла должно выполниться k раз,
следовательно, нужно построить арифметический цикл.
{ фрагмент 14 }
y:=1; {начальное значение произведения}
for i:=0 to k do y:=y*(k+i).
В данном примере использовался прием нахождения формулы общего члена на
основе анализа структуры сомножителей.
Упражнения:
1.Используйте рассмотренный выше прием для вычисления значений по
формулам:
1) y=(k+m)(k+2m)...(k+m2);
2) y=(k+3)(2k+6)(3k+9)..., всего в этой формуле должно быть n
сомножителей.
2. Решите пример 10.13 и упражнения к нему, заменив умножение на сложение.
3. Придумайте еще примеры, которые решались бы аналогично.
Пример 10.14. Вычислить значение выражения: y=cos(1+cos(2+...+cos(n-
1+cos(n)...)).
Страницы
- « первая
- ‹ предыдущая
- …
- 101
- 102
- 103
- 104
- 105
- …
- следующая ›
- последняя »
