Рекурсия

Типы данных

Примеры простой и не простой программы.

 

 


 

Цикл “До”.

Тело цикла (блок 2) выполняется до тех пор,

пока условие (блок 3) не станет истинным.

 

 

нет

 

да

Цикл “Пока”.

Пока не будет нарушено условие, осуществляется повторение цикла.

Лекция №2

Внешний синтаксис – заданный набор операторов, построенных по образцу языков программирования и описывающий логику программы.

Внутренний синтаксис – общий, обычно специально не определяемый синтаксис, пригодный для описания задач в данной области (на пример в математических формулах).

Процедура – хранимая в памяти машины программа.

Операторы внешнего синтаксиса:

- Индексная последовательность (цикл с заранее определенным количеством шагов)

Цикл “До”. Операции структуры, включая модификацию until-теста.

Do do часть

Until until – тест

End – do

 

while while – тест do do – часть end – do
Цикл “Пока”

 

If If – тест then then – часть else else – часть end - if
case cписок 1 case - часть 1 cписок 2 case – часть 2

 


 

 

начало
Ввести число слагаемых

Сумма = 0

ввод N
Номер = 1

Do

S=0
Сумма = сумма + номер2

Увеличить номер на единицу

Until

I=1
Номер > число слагаемых

End – do

Напечатать сумму

конец
Печать S
i>N
I=i+1
S=S+i2

 

нет

 

да

 

1. Простые

2. Структурированные

а)статические структуры

б)динамические структуры

Функция F является рекурсивной, если

1.F(N)=G(N,F(N-1)) , где G-известная функция

2.F(1)= известно

Поиск обнаружение нужного элемента в некотором наборе (структуре)данных

Линейный поиск – (проверяются все элементы последовательно, пока не найдётся нужный) работа в коротких массивах.

Двоичный поиск – (ключ поиска сравнивается с ключом среднего элемента в массивах), для поиска в больших массивах.

Сортировка – переразмещение данных элементов в возрастающем или убывающем порядке.

При выборе метода сортировки, нужно учитывать количество сортированных элементов.

1) Сортировка методом выборки (из массива выбирается наименьший элемент и помещается на место первого элемента массива , за тем выбирается наименьший элемент из оставшихся и помещается во второй элемент массива и т.д.)

Ввести массив А(1…N)

For J=1 ,N-1, 1

Do

Мин. Элемент = А(J)

Индекс мин. Элемент =J

For I=J+1, N, 1

Do

If A(I)<мин.элемент

Then

Мин.элемент =А (I)

Индекс минимального элемента =I

End-if

End-do

A(индекс минимального элемента)=A(J)

A(J)= минимальный элемент

End-do

вывести А(1…N)

 

2) Сортировка включением

(элементы выбираются по очереди и помещаются в нужное место)

 


 

Ввести массив A(1…N)

For I=2, N =1
do

Temp=A(I)

A(0)=temp

J=I-1

While A(J)>temp

Do

A(7+1)=A(I)

J=J-1

End-do

A(J+1)=Temp

End-do

Вывести А(1…)N

3)Сортировка слияния-(два сортированных массива соединяются в один чтобы он стал сортированный)

Ввести массивы B(1…M), C(1…L)

I=1, J=1

For k=1, M+L,1

Do

If I>M

Then

A(k)=C(J), J=J+1

Else

If J>L

Then

A(k)=B(I), I=I+1

Else

If B(I)<C(J)

Then

A(k)=B(I), I=I+1

Else

A(k)= C(J), J=J+1

End-if

End-if

End-if

End-do

Вывести A(1…k)

Абстракция-суждение или представление о некотором объекте которое содержит только свойства, являющимися существенными в данном контексте.