Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Тема 5_Алгоритмы

.pdf
Скачиваний:
21
Добавлен:
18.03.2015
Размер:
371.92 Кб
Скачать

Кафедра

ЛЕКЦИИ ПО ИНФОРМАТИКЕ

 

Кафедра

 

Тема 4

 

информатики

УГАТУ

информатики

 

УГАТУ

 

 

 

 

 

 

 

Для студентов факультета АТС

 

 

 

 

 

 

групп МХ, ММ, СМ, ФМ, АТП, ТМ, ВТ

 

 

 

 

 

Составители:

 

 

 

Алгоритмы

 

доценты Кафедры Информатика

 

 

 

 

 

Ахметсафина Римма Закиевна

 

 

 

 

 

Карчевская Маргарита Петровна

 

 

 

 

 

Рамбургер Ольга Леонардовна

 

 

 

 

 

 

Информатика ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

1

 

 

 

 

Кафедра

Понятие алгоритма

 

Кафедра

Понятие алгоритма

 

информатики

 

информатики

 

 

УГАТУ

 

УГАТУ

 

 

 

 

 

 

 

 

Алгоритм – конечный набор точных и понятных

 

Понятие алгоритма является одним из

 

исполнителю предписаний, позволяющих за

 

основных понятий современной

 

конечное число шагов решать конкретную

 

 

задачу из определенного класса однотипных

 

информатики. Термин алгоритм произошел

 

 

 

задач.

 

 

 

от латинской формы написания имени

 

 

 

 

 

 

 

 

 

выдающегося математика IX века Аль

 

Исполнителем может быть человек, группа людей, робот, станок,

 

Хорезми (algorithmi), который сформулировал

компьютер, язык программирования и т.д. Исполнитель имеет в

 

наличии только некоторую совокупность команд (систему команд

 

правила выполнения четырех

 

 

 

исполнителя – СКИ), которую может использовать при выполнении

арифметических действий в десятичной

 

алгоритма для получения необходимого результата.

 

системе счисления.

 

Т. е. исполнитель действует формально, отвлеченно от

 

 

содержания поставленной задачи, не вникая в смысл того, что он

 

 

 

 

 

 

 

 

делает, только строго выполняет некоторые правила, инструкции,

 

 

 

 

команды

 

 

 

 

Информатика ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

3

Информатика

ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

4

Кафедра

 

Понятие алгоритма

 

Кафедра

 

Понятие алгоритма

 

информатики

 

информатики

 

 

 

 

 

 

 

 

 

 

УГАТУ

 

 

УГАТУ

 

 

 

 

Понятие алгоритма связано с понятием исходных данных и

 

Наличие алгоритма формализует процесс решения

 

 

искомого результата, поскольку назначением любого алгоритма

 

задачи, исключает рассуждение исполнителя.

 

 

является преобразование исходных данных в искомый

 

 

 

 

 

 

результат. При этом исходные данные выбираются из

 

Использование алгоритма дает возможность решать

 

 

некоторой области, которая называется областью допустимых

 

 

задачу формально, механически исполняя команды

 

 

значений исходных данных.

 

 

алгоритма в указанной последовательности.

 

Преобразование исходных данных в искомый результат

 

 

 

 

 

 

выполняется на основе знаний о предметной области. Знания,

 

Целесообразность предусматриваемых алгоритмом

 

 

как правило, имеют вид различных естественных законов

 

 

действий обеспечивается точным анализом со

 

 

(физических, химических, биологических, экономических и т.д.),

 

 

стороны того, кто составляет этот алгоритм.

 

 

либо абстрактных законов (математические формулы, правила

 

 

 

 

или теоремы).

 

 

 

 

 

 

 

 

 

 

 

На основе данных знаний при составлении алгоритма

 

 

 

 

 

 

формируются цепочки действий, приводящих к искомому

 

 

 

 

 

 

результату.

 

 

 

Информатика ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

5

 

 

Информатика ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

6

Кафедра

 

СВОЙСТВА АЛГОРИТМА

 

Кафедра

 

СВОЙСТВА АЛГОРИТМА

 

информатики

 

информатики

 

 

 

 

 

 

 

 

 

 

УГАТУ

 

 

УГАТУ

Помимо того, что алгоритм разрабатывается ради того, чтобы из

 

 

 

 

 

исходных данных получить искомый результат, алгоритм должен

Подводя итог выше сказанному, можно дать следующее

удовлетворять еще целому ряду свойств:

 

 

определение алгоритма.

 

Дискретность. Означает, что путь решения задачи определен в виде

 

 

 

 

 

 

 

 

последовательности шагов – четко разделенных друг от друга предписаний.

Алгоритм – это последовательность

 

Только выполнив одно предписание, можно приступить к выполнению

 

 

следующего.

 

 

однозначных предписаний, исполнение

 

Понятность. Означает, что алгоритм создается в расчете на определенного

 

 

исполнителя, т.е. необходимо, чтобы он мог понять и выполнить каждый шаг

 

которых позволяет с помощью конечного

предписания.

 

 

 

 

числа шагов получить искомый

 

Детерминированность (однозначность). Процесс применения правил к исходным

 

 

данным (путь решения задачи) определен однозначно.

 

 

результат, однозначно определяемый

 

Результативность. На каждом шаге процесса применения правил известно, что

 

 

считать результатом этого процесса, а сам процесс должен закончиться за

 

исходными данными.

 

конечное число шагов.

 

 

 

Массовость. Означает, что алгоритм применим к целому классу однотипных

 

 

 

 

задач, а при решении конкретной задачи из класса исходные данные могут

 

 

 

 

меняться в определенных пределах.

 

 

 

 

 

 

 

Информатика ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

7

 

 

Информатика ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

8

Кафедра

СПОСОБЫ ЗАПИСИ АЛГОРИТМОВ

 

Кафедра

 

 

информатики

УГАТУ

информатики СПОСОБЫ ЗАПИСИ АЛГОРИТМОВ

УГАТУ

Алгоритм, составленный для некоторого исполнителя,

 

Для визуального представления алгоритма разработаны

 

 

специальные алгоритмические языки.

 

можно представить различными способами. Один из

 

 

 

Они позволяют достаточно наглядно, просто и в удобной для

 

способов - словесная форма записи алгоритма.

 

 

Например, словесное описание алгоритма Евклида для

разработчика форме отображать содержательный смысл алгоритма

и производить его анализ.

 

нахождения наибольшего общего делителя (НОД) двух

 

 

 

 

целых положительных чисел m и n выглядит так:

 

Алгоритмический язык – это система обозначений

 

 

 

 

 

 

(символьных и графических), предназначенных для

Шаг 1: Задать числа m и n.

 

 

 

записи алгоритмов.

 

Шаг 2: Если m больше n, то сделать m равным остатку от деления

Обычно алгоритмический язык дополняется математической

 

 

m на n, иначе сделать n равным остатку от деления n на m.

 

 

символикой и либо графическими компонентами, либо некоторыми

Шаг 3: Если m и n не равны нулю, то перейти к шагу 2.

 

 

формальными конструкциями. В первом случае он называется

 

Шаг 4: Если m равно нулю, то НОД равен n, иначе НОД равен m.

 

языком структурных схем или языком блок-схем, во втором случае

 

он называется языком псевдокодов или просто псевдокодом.

 

 

 

 

 

 

 

Информатика ФАП - 2, ФАТС – 2, 3

курс 1, семестр 2, 2009 г.

9

 

Информатика ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

10

Кафедра

СПОСОБЫ ЗАПИСИ АЛГОРИТМОВ. Псевдокод

 

Кафедра

 

 

информатики

 

информатики

 

 

 

 

СПОСОБЫ ЗАПИСИ АЛГОРИТМОВ. БЛОК-СХЕМЫ

 

 

 

 

УГАТУ

 

 

УГАТУ

Пример. На языке

нач цел m,n,x,y,f

 

Графический способ записи предполагает

 

 

 

 

псевдокодов алгоритм

ввод m,n

 

 

 

 

использование определенных графических символов

Евклида для нахождения

 

 

 

наибольшего общего

m:=abs(x); n:=abs(y);

 

 

– блоков. Отсюда и вытекает использование

 

делителя (НОД) двух

нц пока (m>0) и (n>0)

 

 

названия блок-схема для графического

 

целых положительных

 

 

 

представления алгоритма.

 

чисел m и n выглядит так:

если (m>n)

 

 

 

 

Каждый блок предписывает выполнение определенных

 

 

то m:=mod (m,n)

 

 

 

 

 

действий. Совокупность блоков образует схему

 

 

 

 

 

 

 

 

 

иначе n:=mod(n,m)

 

 

алгоритма или блок-схему.

 

 

 

все;

 

 

 

 

Формальные

кц

 

Впервые запись алгоритмов на языке блок-схем ввели российские

 

конструкции

f:=m+n;

 

математики А.А.Ляпунов и Ю.Н.Янов в 1956г. В дальнейшем этот способ

 

 

языка

 

нашел свое отражение в “Единой системе программной документации”, в

псевдокодов

вывод f;

 

которой установлен единый стандарт записи блок-схем (ГОСТ 19.701 – 90).

 

 

 

 

 

 

 

 

кон

 

 

 

 

 

Информатика ФАП - 2, ФАТС – 2, 3

курс 1, семестр 2, 2009 г.

11

 

Информатика ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

12

Кафедра

 

 

Кафедра

 

информатики

 

 

информатики

 

Графический способ записи алгоритмов

Графический способ записи алгоритмов

 

 

УГАТУ

 

УГАТУ

Обозначение некоторых блоков в соответствии с

 

 

 

ГОСТ 19.701-90 СХЕМЫ АЛГОРИТМОВ, ПРОГРАММ

 

 

 

ДАННЫХ И СИСТЕМ

 

 

 

 

 

 

Блоки соединяются линиями потока информации. Внутри блоков записываются

 

 

 

выполняемые действия. Линии со стрелками определяют направление

 

 

 

 

вычислений.

 

 

Информатика ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

13

Информатика ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

14

Кафедра Основные правила применения символов и

 

Кафедра

 

информатики

выполнения схем согласно ГОСТ

 

информатикиБазовые алгоритмические структуры

 

 

УГАТУ

 

УГАТУ

 

 

 

 

• символы в схеме должны быть расположены равномерно;

 

Практически любой сложный алгоритм

 

• следует избегать большого числа длинных линий и пересечений;

 

представляет собой комбинацию трех типов

 

• не допускается изменения углов в начертании символов;

 

 

 

базовых алгоритмических структур: линейного,

• если объем текста, помещаемого внутри символа, превышает его

размеры, то следует использовать символ комментария;

 

разветвляющегося и циклического.

 

• в схемах может использоваться идентификатор символов,

 

 

 

 

 

располагаемый слева над символом, который определяет символ

Линейные алгоритмические структуры (следование)

 

для использования в справочных целях;

 

 

 

состоят из последовательности операций, выполняющихся

• потоки данных или управления показываются линиями, и если

 

 

только один раз в порядке их следования

 

поток имеет направление, отличное от стандартного (направление

 

потока слева направо и сверху вниз считается стандартным), то

 

 

стрелки должны указывать это направление;

 

 

 

• входящие линии могут объединяться в одну исходящую линию, при

 

 

этом место их объединения должно быть смещено;

 

 

 

• линии в схемах должны подходить к символу либо слева, либо

 

 

 

сверху, а исходить либо справа, либо снизу и направлены к центру

 

 

символа.

 

 

 

 

Информатика ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

15

Информатика ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

16

Кафедра

 

 

 

Кафедра

 

 

информатикиБазовые алгоритмические структуры

УГАТУ

информатикиБазовые алгоритмические структуры

УГАТУ

 

 

 

 

Разветвляющиеся

 

 

 

 

 

 

алгоритмические структуры

 

 

 

 

 

 

(ветвление) обеспечивают

 

 

В блок-схемах для записи

 

 

 

выбор между двумя

 

 

 

 

 

альтернативами. Выполняется

 

 

линейной алгоритмической

 

 

 

 

 

 

 

 

проверка, а затем выбирается

 

 

структуры используется

 

 

 

 

 

 

 

 

один из путей.

 

 

блок «Процесс».

 

 

 

 

 

 

 

 

Подобная структура называется

 

 

 

 

 

 

 

 

 

 

 

 

также «ЕСЛИ – ТО – ИНАЧЕ»,

 

 

 

 

 

 

или «развилка». Каждый из

 

 

 

 

 

 

путей (ТО или ИНАЧЕ) ведет к

 

 

 

 

 

 

общей точке слияния, так что

 

 

 

 

 

 

выполнение программы

 

 

 

 

 

 

продолжается независимо от

 

 

 

 

 

 

того, какой путь был выбран.

 

 

Информатика ФАП - 2, ФАТС – 2, 3 курс 1,

семестр 2,

2009 г.

17

Информатика ФАП - 2, ФАТС – 2, 3 курс 1,

семестр 2, 2009 г.

18

Кафедра

 

 

 

Кафедра

 

 

информатикиБазовые алгоритмические структуры

УГАТУ

информатикиБазовые алгоритмические структуры

УГАТУ

 

 

 

 

 

Для графического способа записи

 

 

 

 

 

 

разветвляющих алгоритмов

 

 

 

 

 

 

алгоритмов используется блок

 

 

 

 

 

 

«Принятие решения», внутри

 

 

 

Пример. Найти квадрат

 

 

которого записывается

 

 

 

 

 

 

 

 

наибольшего из трех

 

 

логическое выражение .

 

 

 

 

 

 

 

 

заданных чисел: a, b, c.

 

 

Может оказаться, что для одного из

 

 

 

 

 

 

 

 

 

результатов проверки ничего

 

 

 

 

 

 

предпринимать не надо. В этом

 

 

 

 

 

 

случае можно применять только

 

 

 

 

 

 

один обрабатывающий блок. Такие

 

 

 

 

 

структуры называют «Неполное

 

 

 

 

 

 

ветсвлените» или «ЕСЛИ – ТО»,

 

 

 

 

 

Информатика ФАП - 2, ФАТС – 2, 3 курс 1,

семестр 2,

2009 г.

19

Информатика ФАП - 2, ФАТС – 2, 3 курс 1,

семестр 2, 2009 г.

20

Кафедра

 

 

 

 

Кафедра

 

 

 

информатикиБазовые алгоритмические структуры

УГАТУ

информатикиБазовые алгоритмические структуры

УГАТУ

Задача. Даны действительные числа x, y – координаты точки.

 

Циклические алгоритмические структуры обеспечивают

 

 

многократное выполнение одной и той же последовательности

Определить принадлежит ли точка (x, y) области, заштрихованной на

действий для различных значений, входящих в них

 

рисунке.

 

 

 

 

переменных.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Основной блок цикла, тело цикла, производит требуемые

 

 

 

 

 

 

вычисления. Остальные блоки организуют циклический

 

R1

R2

 

 

 

процесс: устанавливают начальные и новые значения данных,

 

 

 

проверяют условия окончания или продолжения циклического

 

 

 

 

 

 

 

 

 

 

процесса.

 

 

 

 

 

 

 

 

Циклический алгоритм позволяет компактно описать большое

 

 

 

 

 

число одинаковых вычислений над разными данными для

 

 

 

 

 

получения необходимого результата.

 

 

 

 

 

 

Различают два типа структур цикла:

 

 

 

 

 

 

 

- цикл с параметром или с повторением;

 

 

 

 

 

 

- цикл с условием.

 

 

Информатика

ФАП - 2, ФАТС – 2, 3 курс 1,

семестр 2, 2009 г.

21

Информатика

ФАП - 2, ФАТС – 2, 3 курс 1,

семестр 2, 2009 г.

22

Кафедра

 

 

 

 

Кафедра

 

 

 

информатикиБазовые алгоритмические структуры

УГАТУ

информатикиБазовые алгоритмические структуры

УГАТУ

 

 

 

 

 

 

 

Циклы с параметром используют тогда, когда

 

 

Выполняется базовая циклическая структура типа

 

количество повторов тела цикла заранее известно.

 

 

 

 

 

«Цикл с параметром» следующим образом:

 

Для графического способа записи таких алгоритмов используется

 

1. Параметру цикла k присваивается начальное

 

блок «Модификация», внутри которого записывается как

 

 

значение a и сравнивается с конечным значением b.

изменяется параметр цикла .

 

 

 

Если начальное значение параметра цикла

 

 

 

 

превышает (при положительном шаге цикла) конечное

 

 

 

 

 

 

 

 

блок организующий циклический процесс

 

 

значение, то тело цикла ни разу не выполнится;

 

 

 

 

 

2. Выполняется тело цикла;

 

 

 

 

 

 

 

 

 

 

тело цикла

 

 

3. Текущее значение параметра цикла k увеличивается (или уменьшается)

 

 

 

 

на значение шага h. Результат операции k+h присваивается параметру

 

 

 

 

 

 

 

 

 

 

цикла k, старое значение при этом теряется;

 

 

 

K –параметр цикла, a – начальное значение

 

4. Проверяется условие окончания цикла: текущее значение параметра

 

 

параметра цикла,

 

сравнивается с конечным значением b. Если значение параметра цикла

 

 

b – конечное значение параметра цикла,

 

становится больше конечного (при положительном шаге h), то

 

 

 

h – шаг изменения параметра цикла.

 

происходит выход из цикла, иначе происходит переход к пункту 2.

 

Информатика

ФАП - 2, ФАТС – 2, 3 курс 1,

семестр 2, 2009 г.

23

Информатика

ФАП - 2, ФАТС – 2, 3 курс 1,

семестр 2, 2009 г.

24

Кафедра

Базовые алгоритмические структуры

 

Кафедра

Базовые алгоритмические структуры

 

информатики

УГАТУ

информатики

УГАТУ

 

 

 

 

Пример. Вычислить

 

Циклы с условием используются тогда, когда

 

 

число повторений заранее неизвестно, но

 

значения функции y = f(x)

 

 

некоторой переменной х,

 

задано условие окончания цикла.

 

изменяющейся от

 

 

 

 

начального значения х0 до

 

Для графического способа записи таких алгоритмов

 

конечного хk с постоянным

 

 

 

используется блок «Границы цикла».

 

шагом h (протабулировать

 

 

функцию на заданном

 

 

 

 

промежутке [х0 , хk] с шагом

 

 

 

 

h). Записать алгоритм

 

 

 

 

решения задачи с помощью

 

 

 

 

блок-схемы

 

 

 

 

 

Информатика ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

25

 

Информатика ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

26

Кафедра

Базовые алгоритмические структуры

 

Кафедра

 

 

информатики

УГАТУ

информатикиБазовые алгоритмические структуры

УГАТУ

 

 

 

 

Если условие окончания цикла проверяется перед выполнением

 

Если проверка условия происходит после выполнения тела цикла –

 

тела цикла, то такие циклические структуры называют циклами с

 

 

 

циклами с постусловием («Выполнять до тех пор пока не»)

 

предусловием («Выполнять пока»)

 

 

 

 

Тело цикла

 

 

 

 

 

 

 

Блок организующий циклический процесс

 

 

 

 

 

Тело цикла

 

 

Блок организующий циклический процесс

 

 

 

 

 

 

 

Значение логического выражения в условии вычисляется

 

Вначале выполняется тело цикла, затем проверяется

 

 

условие выхода из цикла.

 

 

перед каждым выполнением тела цикла.

 

 

 

 

 

 

Если значение логического выражения ложно, тело

 

 

Если оно истинно, то выполняется тело цикла и снова

 

 

 

 

цикла выполняется еще раз, если истинно –

 

 

вычисляется выражение условия.

 

 

 

 

 

 

происходит выход из цикла.

 

 

Если результат имеет ложное значение, происходит

 

 

 

 

 

 

 

выход из цикла.

 

Таким образом, цикл продолжает свою работу, пока значение логического

 

 

 

Таким образом, цикл продолжает свою работу, пока значение логического

выражения остается ложным.

 

 

 

 

выражения остается истинным.

 

Тело цикла с постусловием выполняется всегда хотя бы один раз.

 

 

Информатика ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

27

 

Информатика ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

28

Кафедра

 

 

Кафедра

Базовые алгоритмические структуры

 

информатикиБазовые алгоритмические структуры

УГАТУ

информатики

УГАТУ

 

 

 

Пример.

 

 

 

 

 

Чтобы циклы с условием успешно

 

Графическая форма

 

 

 

 

завершились необходимо, чтобы в теле

представление

 

 

 

 

алгоритма Евклида

 

 

 

 

цикла был хотя бы один оператор,

 

 

 

 

 

 

для нахождения

 

 

 

 

изменяющий значения, входящих в

 

наибольшего

 

 

 

 

 

логическое выражение переменных.

 

общего делителя

 

 

 

 

 

(НОД) двух целых

 

 

 

 

 

 

 

 

 

 

 

 

 

 

положительных

 

 

 

 

 

 

 

чисел m и n.

 

 

 

 

 

Информатика

ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

29

 

Информатика

ФАП - 2, ФАТС – 2, 3

курс 1,

семестр 2, 2009 г.

30

Кафедра

Вложенные циклы

 

Кафедра

 

Вложенные циклы

 

информатики

 

информатики

 

 

 

УГАТУ

 

 

УГАТУ

 

 

 

 

 

 

 

 

Если телом цикла является циклическая

 

Пример. Вычислить

 

 

 

 

 

 

произведение

 

 

 

структура, то такие циклы называют

 

 

 

 

 

 

 

 

 

 

 

 

 

вложенными. Тип циклов при этом

 

 

n

m

i

 

 

 

 

 

∏ ∏

 

 

 

может быть любым.

 

 

 

 

 

 

 

 

i=1

j =1 1 + j 2

 

 

 

При построении вложенных циклических

 

 

 

 

 

 

 

 

структур всегда следует соблюдать

 

 

Внутренний

 

 

 

 

 

 

блок

 

 

 

 

правило: все блоки внутреннего цикла

 

 

 

 

 

 

 

 

 

 

 

 

 

 

должны полностью лежать в теле

 

Внешний

 

 

 

 

 

внешнего цикла.

 

 

 

 

 

 

 

 

блок

 

 

 

 

 

Информатика

ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

31

 

Информатика

ФАП - 2, ФАТС – 2, 3

курс 1,

семестр 2, 2009 г.

32

Кафедра

Массивы

 

Кафедра

Массивы

 

информатики

 

информатики

 

 

УГАТУ

 

УГАТУ

Многие задачи связаны с обработкой больших объемов

Массив это упорядоченная совокупность однотипных

 

информации, представляющей совокупность данных,

данных, с каждым из которых связан упорядоченный набор

целых чисел, называемых индексами.

 

объединенных единым математическим содержанием

 

Работа с массивом сводится к действиям над его элементами.

или связанных между собой по смыслу. Такие данные

 

 

 

удобно представлять в виде линейных или

 

Индексы определяют положение элемента в массиве.

 

прямоугольных таблиц.

 

Число индексов определяет размерность массива. Элемент

В линейной таблице каждому ее элементу соответствует

одномерного массива обозначается переменной с одним

порядковый номер. Для элемента прямоугольной

 

индексом. Элемент двумерного массива обозначается

 

таблицы должны быть указаны два номера:

 

переменной с двумя индексами. Первый индекс обозначает

номер по вертикали (номер строки) и номер по

 

номер строки, а второй – номер столбца.

 

 

Таким образом, для обращения к конкретному элементу

 

горизонтали (номер столбца).

 

 

В алгоритмах для представления таких данных

 

массива необходимо указать имя массива и значения

 

используются массивы.

 

индексов:

Ai ; Bi, j

 

Информатика

ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

33

Информатика

ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

34

Кафедра

Массивы

 

Кафедра Языки программирования как разновидность

 

информатики

 

информатики

алгоритмических языков

 

 

УГАТУ

 

УГАТУ

 

 

 

 

 

 

 

 

Задача. В одномерном массиве чисел аi (i = 1, 2, …, N) найти

Для того чтобы с помощью ЭВМ можно было решить

сумму чисел с нечетными индексами (s1) и среднее

 

арифметическое чисел с четными индексами (s2)

 

конкретную задачу, недостаточно составить алгоритм

 

 

 

ее решения, необходимо записать данный алгоритм

 

Формирование одномерного массива

 

на одном из языков программирования.

 

 

 

Языки программирования также как и алгоритмические

 

 

 

 

Обработка одномерного массива

языки относятся к формальным языкам, более того,

 

языки программирования можно рассматривать как

 

 

 

 

 

 

некоторую разновидность алгоритмических языков.

 

 

 

Общим для языков программирования и

 

 

 

 

алгоритмических языков является возможность

 

 

 

 

представления с их помощью некоторого алгоритма в

 

 

 

форме, понятной исполнителю.

 

 

 

 

В данном случае исполнителем алгоритма будет

 

 

 

 

компьютер.

 

Информатика

ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

35

Информатика

ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

36

 

Кафедра Языки программирования как разновидность

 

 

 

 

Кафедра

 

 

 

информатики

 

 

 

 

 

 

Этапы подготовки и решения задач на компьютере

 

 

 

алгоритмических языков

 

 

 

 

информатики

 

 

 

 

УГАТУ

 

 

 

УГАТУ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Dim m as integer, n as integer

 

 

 

 

Процесс решения любой практической

 

 

 

Представление

m = Val(InputBox("m ?"))

 

 

 

 

 

 

 

алгоритма Евклида

n = Val(InputBox("n ?"))

 

 

 

 

задачи на компьютере включает в себя

 

для нахождения

 

 

 

 

 

наибольшего общего

Do

 

 

 

 

три основных этапа:

 

 

 

делителя (НОД) двух

If m > n Then

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

целых

 

 

 

 

 

- Постановка задачи;

 

 

 

 

m = m Mod n

 

 

 

 

 

 

 

положительных чисел

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

m и n.

 

Else

 

 

 

 

- Составление алгоритма ее решения;

 

 

 

на языке

 

n = n Mod m

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

программирования

End If

 

 

 

 

- Составление программы ее решения

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Loop While (m <> 0) And (n <> 0)

 

 

 

 

на ПК.

 

 

 

 

 

If m = 0 Then d = n Else d = m

 

 

 

 

 

 

 

 

 

Print "НОД="; d

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Информатика ФАП - 2, ФАТС – 2, 3

курс 1, семестр 2, 2009 г.

37

 

 

 

Информатика ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

38

 

Кафедра

Этапы подготовки и решения задач на компьютере

Кафедра

Этапы подготовки и решения задач на компьютере

информатики

информатики

 

УГАТУ

 

УГАТУ

Постановка задачи

 

 

Составление алгоритма

 

Этот этап решения задач начинается со словесного или содержательного

 

После завершения этапа постановки задачи приступают

описания задачи.

 

 

 

 

к выбору метода решения задачи и

 

Далее приступают к формальной или математической постановке

 

 

 

 

 

непосредственному составлению алгоритма, в

 

решаемой задачи. Математическая формулировка заключается в

 

 

 

 

 

процессе его выполнения устанавливается

 

записи условия задачи с помощью математических обозначений,

 

 

 

формул, зависимостей, в определении исходных данных и формы

 

 

необходимая последовательность арифметических и

выдачи результатов вычислений. Задача должна быть сформулирована

 

логических действий с помощью которых может быть

четко и однозначно.

 

 

 

 

реализован выбранный метод.

 

Формальную или математическую постановку задачи всегда начинают с

 

 

 

 

 

четкого выяснения, какие конкретно исходные данные и знания следует

 

Составленный алгоритм может быть представлен в виде

использовать, какие конкретно результаты требуется получить.

 

 

словесного описание хода решения (на языке

 

Так в задачах вычислительного характера исходные данные чаще всего

 

 

 

псевдокодов) или в виде блок-схемы, графически

 

представляются в виде чисел, искомые результаты также в виде

 

 

иллюстрирующий процесс решения.

 

набора чисел, таблиц, графиков или рисунков.

 

 

 

 

 

 

 

 

 

 

 

 

Информатика ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

39

 

Информатика ФАП - 2, ФАТС – 2, 3 курс 1, семестр 2, 2009 г.

40

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]