Лекция6(2) Типовые алгоритмы
.pdfАлгоритмы табулирования функций с запоминанием результатов.
Начало
Хн,Хк,h,a
n=(Хк-Хн)/h+1
I= 1
X(I)= Хн
У(I)= а-Х(I)2 НЦ1
I= I+1
Х(I)=Х(I-1)+h
Да
I<=n
КЦ1 НЦ2
I=1,n,1
Х(I), У(I) |
Конец |
1.Введем хн, хк, h, a
2.Вычислим количество точек n=(Хк-Хн)/h+1 , для которых будут вычислены Х и У, n определяет размерность массивов.
3.Задаем начальное значение параметра цикла I=1 (I – это номер точки).
4.Задаем X(I)=xн
5.НЦ1
5.1.Вычислим У(I)=a*X(I)2
5.2.Вычислим I=I+1
5.3.Вычислим X(I)=X(I-1)+h
5.4.Если I<=n идти к НЦ
6.КЦ1
7.НЦ2 Параметр цикла I изменяется от 1 до n
сшагом 1.
7.1 Печать массивов Х(I), Y(I)
8.КЦ2
9.Конец.
КЦ2 |
Лекция |
|
Алгоритмы табулирования функций с использованием блока модификации
1.Введем хн, хк, h, a
2.Вычислим количество точек n=(Хк-Хн)/h+1, для которых будут вычислены Х и У, n - определяет размерность массивов.
3.Задаем начальное значение X(1)=xn
4.Задаем начальное значение параметра цикла I=1 (I – это номер точки).
5.Задаем X(I)=xн
6.НЦ1 Параметр цикла I изменяется от 1 до n
сшагом 1.
6.1.Вычислим У(I)=a*X(I)2
6.2.Вычислим X(I)=X(I-1)+h
7.КЦ1
8.НЦ2 Параметр цикла I изменяется от 1 до n
сшагом 1.
8.1Печать массивов Х(I), Y(I)
9.КЦ2
10.Конец.
|
Начало |
|
|
Хн,Хк,h,a |
|
|
n=(Хк-Хн)/h+1 |
|
|
X(1)= Хн |
НЦ1 |
|
I=1,n,1 |
|
|
|
|
|
У(I)= а-Х(I)2 |
|
|
Х(I)=Х(I-1)+h |
|
|
КЦ1 |
НЦ2 |
|
I=1,n,1 |
|
|
Х(I), У(I) |
Конец |
часть 2 |
КЦ2 |
12 |
Типовые алгоритмы обработки одномерных массивов
Лекция 6 Информатика, часть 2 |
13 |
Обычно в программировании используются одномерные и двумерные массивы.
Одномерные массивы – это столбец или строка каких-либо величин обозначенных одним именем и индексом, указанным в скобках.
Вматематике аналогом одномерного массива является вектор-строка или вектор –столбец.
Алгоритмы ввода и вывода элементов одномерных массивов
Ввод элементов одномерного
мссива X(N), I=1,2,…,N. Шаг изменения I равен 1. При N=5 элементы массива Х(1), Х(2), Х(3), X(4), X(5).
N НЦ
I=1,N,1 |
Х(I) |
КЦ |
Вывод элементов одномерного
массива У(N), I=1,…,N |
НЦ |
|
Шаг изменения I равен 1. |
||
I=1,N |
||
При N= 5 элементы массива |
Y(I) |
|
Y(1), Y(2), Y(3), Y(4), Y(5). |
||
|
||
|
КЦ |
Лекция 6 Информатика, часть 2 |
15 |
Алгоритм вычисления суммы элементов массива и среднего значения
Вычислить среднее значение |
S=0 |
|
элементов массива А(М). |
|
|
Входные данные: M, A(M). |
НЦ |
|
I=1,M,1 |
|
|
Выходные данные: S – сумма |
|
|
|
|
|
элементов массива, SR – среднее |
S=S+A(I) |
SR=S/M |
значение. |
|
|
Вспомогательные данные: I |
КЦ |
|
|
|
Математическая постановка задачи |
1. |
Задание начального значения |
||||
переменной суммы S=0. |
|
|||||
|
|
|
|
|
||
|
|
|
|
2. |
НЦ Параметр цикла I изменяется |
|
M |
|
S |
|
от 1 до М с шагом 1. |
2.1. |
|
|
Вычисление суммы S=S+А(I). |
|
||||
S = å A(I ) |
SR = |
|
||||
M |
3. КЦ |
|
||||
I = 1 |
|
4. |
Вычисление среднего SR=S/M. |
|||
|
|
|
|
Например: M=5, А(1)=3, А(2)=2, А(3)=-3, А(4)=7, А(5)=1 , тогда S=10, SR=2 16
Алгоритм вычисления произведения элементов массива
Вычислить произведение |
|
элементов массива А(М). |
P=1 |
Входные данные: M, A(M). |
НЦ |
Выходные данные: |
I=1,M,1 |
|
|
Р – произведение элементов |
P=P*A(I) |
массива. |
|
Вспомогательные данные: I |
КЦ |
Математическая постановка |
1. Задание начального значения |
|
переменной произведения Р=1. |
||
задачи |
||
2. НЦ Параметр цикла I изменяется |
||
|
||
M |
от 1 до М с шагом 1. |
|
P = ∏ A(I ) |
2.1. вычислим произведение Р=Р*А(I) |
|
I = 1 |
3. КЦ |
|
|
||
|
|
Например: M=5, А(1)=3, А(2)=2, А(3)=-3, А(4)=7, А(5)=1 , тогда P=-126
Алгоритм объединения двух массивов c суммированием их элементов
Объединить два массива А и В одинакового размера с суммированием элементов, имеющих одинаковые индексы
С(I)=A(I) +B(I)
Входные данные: M, A(M), B(M).
Например: M=5, Массив А: 3, 2, -3, 7, 1 Массив B: 4, 3, 1,-5, 5 Тогда Массив С: 7, 5,-2, 2,6
Выходные данные: C(M) – массив результатов.
Вспомогательные данные: I текущее значение индекса элементов массива.
НЦ |
I=1,M,1 |
|
|
|
C(I)=A(I)+B(I) |
|
КЦ |
Лекция 6 Информатика, часть 2 |
18 |
Алгоритм подсчета количества элементов массива, удовлетворяющих заданному условию
Подсчитать количество |
|
K=0 |
|||
элементов массива А |
|
||||
НЦ |
|
||||
размерностью М, |
|
I=1,M,1 |
|||
удовлетворяющих условию |
|
||||
|
|
||||
A(I)>T. |
|
|
Нет |
A(I)>T |
|
Входные данные: M, A(M), T. |
|||||
|
|||||
Выходные данные: K – |
|
Да |
|||
|
K=K+1 |
||||
количество элементов массива, |
|
||||
КЦ |
|
||||
удовлетворяющих условию. |
|
||||
|
|
||||
Вспомогательные данные: I |
1. Задание K=0. |
||||
Математическая постановка |
|||||
2. НЦ Параметр цикла I |
|||||
задачи |
|
|
изменяется от 1 до М с шагом 1. |
||
|
|
|
2.1 Если А(I)>T то |
||
M |
|
|
2.2. К=К+1 |
|
|
K = å 1 |
åñëè |
A(I ) > T |
3. КЦ |
|
|
I = 1 |
|
|
|
|
Например: M=5, Т= 2, А(1)=3, А(2)=2, А(3)=-3, А(4)=7, А(5)=1 , тогда К=2
Алгоритм суммирования элементов массива, удовлетворяющих заданному условию
Просуммировать элементы массива
В размерностью N, удовлетворяющих условию B(I)>Z.
Входные данные: N, B(N), Z.
Выходные данные: S – Сумма элементов массива, удовлетворяющих условию.
Вспомогательные данные: I
S=0 |
I=1,N,1 |
Нет |
B(I)>Z |
Да |
S=S+B(I) |
Математическая постановка задачи |
|
||
Задание начального значения |
|||
|
|
||
|
|
переменной суммы S=0. |
|
M |
|
Формула в цикле(сумма) |
|
S = å B(I ) |
åñëè B(I ) > Z |
S=S+B(I) |
|
I = 1 |
|
|
Например: N=5, Z= 2, В(1)=4, В(2)=3, В(3)=1, В(4)=-5, В(5)=5 , тогда S=13