Шпаргалка по "Алгоритмические языки"

Автор: Пользователь скрыл имя, 22 Января 2011 в 20:59, шпаргалка

Описание работы

Язык программирования. Алгоритмические языки.
Понятие алгоритма, виды алгоритмов.
Основные свойства алгоритмов.
Операторы языка программирования Pascal.
Оператор присваивания.
Оператор ветвления (условный оператор).
Операторы цикла.
Типы данных языка Pascal, операторы преобразования типов.
Арифметические операции и выражения в языке Pascal. Правила записи арифметических выражений.
Функции для работы со строками.
Массивы в языке Pascal. Статические и динамические массивы.
Функции работы с датой и временем.
Логические выражения в языке Pascal.
Локальные и глобальные переменные.
Понятие подпрограммы. Виды подпрограмм.
Понятие процедуры, формальные, фактические параметры.
Понятие функции, формальные, фактические параметры.
Рекурсия.
Работа с файлами.
Компоненты среды программирования Delphi.
Отладка, пошаговая троссировка программ в среде Delphi.

Работа содержит 1 файл

ответы.doc

— 278.50 Кб (Скачать)

   Язык  программирования Borland Delphi в своем составе содержит огромное количество функций для работы с типом данных TDateTime (внутренним форматом BorlandDelphi описывающим обобщенный формат дата/время) , позволяющие производить практически любые манипуляции с вышеуказанными типами данных.

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

    Для того чтобы программа не была линейной (т.е. все инструкции не выполнялись  от начала до конца) в языках программирования используют логические выражения, результат  которых может быть либо правдой (true), либо ложью (false). И в зависимости от этого код программы может выполняться по-разному.

    Простые логические выражения являются результатом операций отношения между двумя операндами. В примерах ниже операндами являются данные переменных x и y. Операндами могут быть числа, символы и другие типы данных. Все что можно сравнивать между собой. Однако не рекомендуют сравнивать вещественные числа из-за особенностей их хранения в памяти компьютера.

    В Паскале предусмотрены следующие  операторы отношений:

  • меньше: x < y
  • больше: x > y
  • равно: x = y
  • не равно: x <> y
  • меньше или равно: x <= y
  • больше или равно: x >= y

    Результатом логического выражения всегда является булевское (логическое) значение. Это  такой тип данных, который может  принимать только два значения (true или false).

    В примере шести булевским переменным присваиваются значения простых логических выражений. Значения, хранимые в булевских переменных, затем выводятся на экран (изображение 1. Логические выражения и логические переменные).

    Логические  операции

    С помощью логических операторов можно формировать более сложные логические выражения. Логические операторы обычно применяются по отношению к простым логическим выражениям.

    В языке программирования Pascal предусмотрены  следующие логические операции:

  • конъюнкция (логическое умножение) - and. Результат имеет значение true только, когда истинны оба операнда (обычно представлены простыми логическими выражениями);
  • дизъюнкция (логическое сложение) – or. Результат будет true, если хотя бы одно из простых выражений возвращает истину;
  • отрицание (инверсия) not. Результат имеет значение true, если операнд имеет значение false, и наоборот.

    Последовательность  выполнения логических операторов: not, and, or.

    В языке Паскаль сначала выполняются  логические операторы, а уже потом  операторы отношений, поэтому не нужно забывать расставлять скобки в сложных логических выражениях (изображение 2. Расстановка скобок в логических выражениях на языке Pascal). 
 
 
 
 
 
 
 
 
 
 

    Локальные и глобальные переменные.

Есть локальные  и глобальные переменные: 
Локальные это когда вы пишете переменную вне логических блоков begin  end в созданой процедуре, а глобальные задаются перед ключевым словом implementation
Переменные обозначаются ключевым словом var, а именно var имя_переменной : тип_переменной ;

 Все переменные, которые использует подпрограмма, могут быть либо глобальные либо локальные.

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

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

   Понятие подпрограммы. Виды подпрограмм.

   Подпрограмма - это отдельная функционально независимая часть программы. Любая подпрограмма обладает той же структурой, которой обладает и вся программа.

   Подпрограммы  решают три важные задачи:

  • избавляют от необходимости многократно повторять в тексте программы аналогичные фрагменты;
  • улучшают структуру программы, облегчая ее понимание;

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

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

   Подпрограммы, входящие в состав классов в объектных  языках программирования, обычно называются методами. Этим термином называют любые подпрограммы-члены класса, как функции, так и процедуры; когда требуется уточнение, говорят о методах-процедурах или методах-функциях.

   Подпрограммы (процедуры и функции).

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

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

   При использовании  вспомогательных алгоритмов необходимо учитывать способ передачи значений исходных данных для них и получения результата от них. Аргументы вспомогательного алгоритма — это переменные, в которых должны быть помещены исходные данные для решения соответствующей подзадачи. Результаты вспомогательного алгоритма — это также переменные, где содержаться результаты решения этих подзадач, а также результатом может быть конкретное действие, которое совершает компьютер под действием подпрограммы.

   Подпрограммы  могут быть двух видов: подпрограмма без параметров и подпрограмма с параметрами. Обращение к подпрограмме может быть организовано из любого места основной программы или другой подпрограммы сколько угодно раз.

   При работе с подпрограммами важными являются понятия формальных и фактических параметров. Формальные параметры — это идентификаторы входных данных для подпрограммы. Если формальные параметры получают конкретные значения, то они называются фактическими. Формальные параметры могут получить конкретные значения только в той программе, где производится обращение к данному модулю-подпрограмме. Тип и порядок записи фактических параметров должны быть такими же, как и формальных параметров. В противном случае результат работы программы будет непредсказуемым. Из этого следует, что фактические параметры используются при обращении к подпрограмме из основной, а формальные параметры — только в самом модуле.

   Подпрограмма  с параметрами используется для  записи многократно повторяющихся  действий при разных исходных данных. Подпрограммы с параметрами можно разделить на два типа: подпрограммы-функции и просто подпрограммы с параметрами (их называют процедурами).

   При составлении  подпрограмм с параметрами надо соблюдать следующие правила:

   1) каждая  подпрограмма имеет свое имя  и список формальных параметров;

   2) процедура  из основной программы вызывается  командой вызова, которая по форме  ничем не отличается от вызова  команды исполнителя. Результат  присваивается одной или нескольким  переменным, которые находятся в  списке формальных параметров. Но результатом могут быть, конечно, не только значения переменных, но какое либо действие, выполненное ЭВМ.

   Формальные  и фактические  параметры

   Формальные  параметры подпрограммы указывают, с какими аргументами следует  обращаться к этой подпрограмме (количество аргументов, их последовательность, типы). Они задаются в заголовке подпрограммы в виде списка, разбитого на группы. Разделителем групп является знак точка с запятой (;). В каждую группу  включаются  параметры одного типа, принадлежащие к одной  категории.

   Все формальные параметры можно разбить на четыре категории:

  • параметры-значения;
  • параметры-переменные;
  • параметры-константы (используются только в версии 7.0);
  • параметры-процедуры и параметры-функции.

   Для каждого  формального параметра следует  указать имя и, как правило, тип, а в случае параметра-переменной или параметра-константы - его категорию. Имена параметров могут быть любыми, в том числе и совпадать с именами объектов программы. Необходимо лишь помнить, что в этом случае объект основной программы с таким именем становится недоступным для непосредственного использования подпрограммой. Тип формального параметра может быть практически любым, однако в заголовке подпрограммы нельзя вводить новый тип. Например, нельзя писать

   function Max( A: array[ 1..100 ] of real ): real;

   Чтобы правильно записать этот заголовок, следует в основной программе  ввести тип-массив, а затем использовать его в заголовке:

   type tArr =array [ 1..100 ] of real; 
function Max ( A: tArr ) : real;

   При обращении  к подпрограмме формальные параметры заменяются соответствующими фактическими вызывающей программой или подпрограммой.

    Процедуры и функции

    В Паскале подпрограммы делятся на процедуры и функции:

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

    program mine(output);

     

    var i : integer;

     

    procedure print(var j: integer);

     

      function next(k: integer): integer;

      begin

        next := k + 1

      end;

     

    begin

      writeln('Всего: ', j);

      j := next(j)

    end;

     

    begin

      i := 1;

      while i <= 10 do

        print(i)

    end.

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

    Причём  содержимое секций описания переменных, типов, констант, внешнего тела (процедуры, функции, программы), расположенных перед описанием процедуры/функции, доступны внутри неё. Также, в большинстве диалектов из процедуры можно обращаться к параметрам внешней процедуры.

    Вслед за заголовком процедур/функций вместо тела может помещаться ключевое слово forward, это делается в том случае, если описание процедуры/функции располагается в программе после её вызова, и связано с поддерживаемой в Паскале возможностью компиляции программы за один проход.

    Процедуры отличаются от функций тем, что функции  возвращают какое-либо значение, а процедуры — нет.

    Одним из наиболее важных элементарных операторов является оператор присваивания, синтаксис  которого определяет диаграмма рис. 2.5.

Информация о работе Шпаргалка по "Алгоритмические языки"