
- •Перечень обеспечивающих средств
- •Псевдокод алгоритма
- •Задание 1. Запись математических выражений на алгоритмическом языке
- •Задание 2. Запись арифметических выражений в математической форме
- •Задание 3. Циклические вычислительные процессы. Вычисление значений функции при различных значениях аргумента (табулирование функции)
- •1 Способ: Цикл с использованием операторов условного (if) и безусловного переходов (goto)
- •2 Способ: Организация цикла с предусловием (while) Общий вид алгоритма цикла с предусловием
- •3 Способ: Организация цикла с постусловием (repeat…until) Общий вид алгоритма цикла с постусловием
- •4 Способ: Организация цикла с параметром (for) Общий вид алгоритма цикла с параметром
- •Задание 4. Циклические вычислительные процессы. Решение задач, содержащих вычисление конечных сумм и произведений
- •1 Способ: Цикл с предусловием (while)
- •2 Способ: Цикл с постусловием (repeat…until)
- •3 Способ: Цикл с параметром (for) со счётчиком (с шагом 1)
- •1Способ: Цикл с предусловием (while)
- •Индивидуальные задания
Псевдокод алгоритма
-
алг Работа с циклами
нач вещ x, s
цел n
вывод “Введите значение x”
ввод x
если x > 0
то s = ctg (x)
иначе s = 0
нц для n = 2 до 10
кц
все
вывод “S = ”, s
кон
Пример 7. Вычислить функциональный ряд с неопределенным количеством элементов.
Для решения подобных задач используют условные циклы, в которых вычисляют элемент ряда и его значение сравнивают с некоторой величиной e, называемой точностью (где ). Сумма ряда вычисляется до тех пор, пока величина очередного вычисленного члена ряда не станет меньше величины e.
Если же в выражении имеется факториал (n!), то его необходимо вычислять в цикле до основного вычисления элемента.
Например, найти сумму ряда:
На рис. 11 представлена схема алгоритма этого примера, использующий цикл с постусловием. Ниже даны программы на языках Псевдокод, С и Pascal.
Псевдокод алгоритма
-
алг Работа с условными циклами
нач вещ y, s, e
цел n, k, f
нц f = 1
нц для k = 1 до n
f = f * k
кц
y = n / f
s = s + y
n = n + 1
пока y > e
кц
вывод “Результат = ”, s
кон
|
Программа на языке С
#include <iostream.h> #include <math.h> main () { float y, s = 0.0, e = 0.05; int n =1, k; longint f; do { f = 1; for ( k = 1; n <= n; n ++) f = f * k; y = n / f; s = s + y; n ++: } while (y > e); // Цикл выполняется пока условие истинно cout << ”Результат = ” << s <<endl; }
Программа на языке Pascal
Program a_3b; Var y, s, e : real; n, k : integer; f : longint; begin s := 0.0; n := 1; e = 0.05; Repeat begin f :=1; for k := 1 to n do f := f * k; y : = n / f; s := s + y; n := n + 1; end; Until y < e; { Цикл выполняется пока условие ложно} writeln (‘ Результат = ’, s); end. |
Рис. 11. Схема алгоритма |
|