ЗНАЕТЕ ЛИ ВЫ?

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



Алгоритм может быть реализован в виде комбинации трех базовых алгоритмических конструкций: линейной, разветвленной, циклической.

Алгоритм линейной структуры — алгоритм, в котором предписываемые действия выполняются последовательно: Оператор1 — Оператор2 — ... — Оператор N. Такой порядок выполнения действий называется естественным.

Алгоритм разветвленной структуры— алгоритм, в котором предусмотрено разветвление выполняемой последова­тельности действий в зависимости от результата проверки какого-то условия. Условие — это некоторое логическое выражение. Если условие (логическое выражение) принимает значение «истина», то выполняется Оператор1, в противном случае — значение «ложь» — выполняется Оператор2. Oпeратор1 и Оператор2 могут представлять собой группу операторов, а также могут быть условными операторами. В случае отсутствия Оператора2 получаем конструкцию с неполным ветвлением.

 

Алгоритм циклической структуры(цикл с повторением) — алгоритм, в котором предусмотрено неоднократное выполнение одной и той же последовательности действий. Эту последовательность действий называют телом цикла.

Если количество повторений известно, то используют цикл со счетчиком, иначе - цикл с предварительной или последующей проверкой условия повторения.

Циклическую структуру реализуют операторы трех типов.

Оператор FOR...DOдействует следующим образом. Тело цикла выполняется для каждого значения параметра цикла I от его начального M1 до конечного значения М2 включительно. I, Ml, M2 — чаще всего переменные целого типа. Шаг изменения переменной цикла I равен +1 или -1.

Оператор WHILE... DOдействует следующим образом. Каждый раз предварительно проверяется значение логического выражения. Пока оно истинно, выполняется тело цикла. Как только оно становится ложным, происходит выход за пределы цикла. Если с самого начала значение логического выражения является ложным, то тело цикла не выполняется ни разу.

Оператор REPEAT...UNTILдействует следующим образом. Тело цикла выполняется, пока значение логического выраже­ния ложно. Тело цикла выполняется как минимум один раз.

 

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

 

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

 

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

Первые компьютеры (ЭВМ) разрабатывались прежде всего как вычислительные машины, т. е. устройства, выполняющие операции над числами. Сегодня компьютеры позволяют обрабатывать информацию всех видов — текстовую, графическую, числовую, мультимедийную. Для решения задачи на компьютере необходимо создать программу, т. е. последовательность команд, входящих в систему команд компьютера.

Для первых компьютеров программисты писали программы в двоичных кодах, т. е. на машинном языке. Каждая команда машинного языка задает некоторое элементарное действие центрального процессора.

Важным этапом в развитии программирования явилась разработка языков программирования высокого уровня(ЯПВУ) — специальных искусственных языков, приближенных к обычному разговорному языку (английскому). Примеры таких языков: FORTRAN, Basic, Pascal, С. Большинство языков высокого уровня универсальны, т. е. предназначены для решения широкого круга задач.

Первая цель создания ЯПВУ — облегчить создание программ. Вторая цель — сделать программы переносимыми, т. е. уменьшить количество труда по адаптации программ для новых типов компьютеров.

Поскольку компьютер (а точнее, его процессор) оперирует не конструкциями ЯПВУ, а двоичными командами, то перед выполнением программа должна быть превращена в машинный код. Выполняют эту операцию программы-трансляторы. В зависимости от порядка подготовки программы на языке высокого уровня к исполнению, трансляторы делятся на компиляторы и интерпретаторы.

Компилятор — это программа, автоматически преобразующая (компилирующая) исходный код ЯПВУ в машинный код и создающая таким образом исполняемый файл. Он может быть запущен на исполнение операционной системой. В ОС Microsoft такие файлы могут иметь расширения ехе, com, dll.

Интерпретатор — это программа, преобразующая код ЯПВУ в машинный код шаг за шагом, т. е. каждая коман­да преобразуется интерпретатором и сразу выполняется компьютером, затем интерпретатор преобразует следую­щую команду, компьютер ее выполняет и т. д. (интерпретатор — «синхронный переводчик»). Недостаток интерпретаторов — низкая скорость выполнения программ. Примеры: интерпретаторы языков Basic и Java Script. Для языка Basic в настоящее время существуют как интерпретаторы, так и компиляторы.

 

Типы данных

При решении задач на компьютере следует определить данные задачи и их типы. Данные — это информация, необходимая для выполнения программы, представленная в формальном виде, который обеспечивает возможность ее хранения, обработки и передачи (англ. data).

Языки высокого уровня организуют обработку данных с помощью переменных. Переменная— это именованная область оперативной памяти, в которой может храниться нужная информация (данные). Способ хранения определяется типом переменной.

Константа — это именованное значение, которое остается неизменным на протяжении всего времени выполнения программы. Числовая константа представляет собой какое-либо число (7; 3.14), а строковая константа - произвольную строку ("количество учеников в классе").

В любом ЯПВУ переменные и константы характеризуются своими типами. Тип данных — это правила хранения и формат данных. Во время работы программы тип данных будет определять, каким образом данные будут извлекаться из оперативной памяти (ОП), интерпретироваться и сохраняться в ОП. Например, величины 205 и -45 относятся к целочисленному типу и их можно складывать, вычитать, перемножать и делить. Величины "цвет" и "ок" относятся к строковому типу, их можно сцеплять, но над ними нельзя выполнять арифметические операции.

В языке Basic существуют следующие типы данных.

 

Простые Структурированные
Целые: Integer (2 байта) LONG (4 байта) Массивы: DIM (могут быть целыми, вещественными, логическими)
Вещественные: SINGLE (4 байта) DOUBLE (8 байтов) Строковые: STRING (1 байт на символ)
Логические: BOOLEAN (2 байта)  

 

Примечание: Массив - индексированный набор элементов одного типа; STRING - ряд, последовательность, цепочка; строка - последовательность символов.

 





Последнее изменение этой страницы: 2016-04-26; Нарушение авторского права страницы

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.216.79.60 (0.008 с.)