2. Каждому термину, указанному в левой колонке, поставьте в соответствие его определение, приведенное в правой колонке:
а) линейный алгоритм | 1) алгоритм, по которому исполнителю в зависимости от выполнения некоторого условия надо выполнить либо одну, либо другую последовательность команд |
б) блок-схема | 2) алгоритм, по которому исполнителю надо выполнять некоторую последовательность команд несколько раз до тех пор, пока выполняется некоторое условие |
в) алгоритм с повторением | 3) алгоритм, в котором команды следуют строго одна за другой |
г) разветвляющийся алгоритм | 4) алгоритм в виде последовательности специальных графических блоков |
3. Перечислите формы записи алгоритмов.
4. Что такое система команд исполнителя?
5.К какому типу алгоритмов можно отнести следующие стихи:
а) Эй, топтыжка, б) Пока свободою горим,
Топни, топни, Пока сердца для чести живы,
Переменные. Ввод и вывод в Паскале.
Ножкой о пол Мой друг, отчизне посвятим
Хлопни, хлопни. Души прекрасные порывы.
Ну-ка, ручки протяни,
6.Выпишите команды, которые являются телом алгоритма:
дано перо в начале координат и поднято
сместиться в точку(2,1)
сместиться на вектор(0,3)
7. Как на блок-схеме может быть представлен алгоритм с повторением?
8. Запишите словесный алгоритм перехода дороги на светофоре.
9. Нарисуйте блок-схему для проверки числа – простое или составное (простое число делится только на себя и на единицу).
10. Напишите определение понятия исполнитель алгоритма.
Вариант 2
1. Напишите определение понятия исполнитель алгоритма.
2. Каждому термину, указанному в левой колонке, поставьте в соответствие его определение, приведенное в правой колонке:
а) словесное описание алгоритма | 1) алгоритм, по которому исполнителю надо выполнять некоторую последовательность команд несколько раз до тех пор, пока выполняется некоторое условие; |
б) разветвляющийся алгоритм | 2) запись алгоритма в виде последовательности операторов (команд) некоторого алгоритмического языка |
в) программа | 3) алгоритм, по которому исполнителю в зависимости от выполнения некоторого условия надо выполнить либо одну, либо другую последовательность команд; |
г) алгоритм с повторениями | 4) запись алгоритма в виде последовательности слов и предложений |
3. Как на блок-схеме может быть представлен алгоритм с ветвлением?
4. Что понимают под командой алгоритма?
5.К какому типу алгоритмов можно отнести следующие стихи:
а) Если ветер в лицо — не гнись, б) Что нам стоит дом построить?
Если будет гроза — крепись. Просто вырыть котлован,
Если радость на сердце — пой, А затем приладить рельсы
Но всегда будь самим собой. И пустить по рельсам кран.
Pascal — основы программирования
6. Выпишите команды, которые являются телом алгоритма:
дано перо в начале координат и поднято
сместиться на вектор(0,3)
сместиться на вектор(1,0)
7. Перечислите формы записи алгоритмов.
8. Запишите словесный алгоритм перехода дороги на пешеходном переходе.
9. Нарисуйте блок-схему для решения уравнения ах+в=0
10. Напишите определение понятия алгоритм.
III. Теоретическая часть.
Язык программирования.
Для представления алгоритма в виде, понятном компьютеру, служат языки программирования. Сначала разрабатывается алгоритм действий, а потом он записывается на одном из таких языков. В итоге получается текст программы — полное, законченное и детальное описание алгоритма на языке программирования. Затем этот текст программы специальными служебными приложениями, которые называются трансляторами, либо переводится в машинный код (язык нулей и единиц), либо исполняется.
Транслятор — средство для преобразования текстов из одного языка, понятного человеку, в другой язык, «понятный» компьютеру. Трансляторы бывают двух типов — интерпретаторы и компиляторы. Отличие между ними заключается в том, что интерпретатор последовательно анализирует и исполняет каждую строку программы, а компилятор проводит полный анализ написанной программы и формирует уже готовый к исполнению машинный код.
Языки программирования — искусственные языки. От естественных они отличаются ограниченным числом «слов», значение которых понятно транслятору, и очень строгими правилами записи команд (операторов).
В языках программирования высокого уровня программа — это перечень действий. Исполнение этих действий определено в самом языке программирования, и их принято называть операторами.
Алфавит языка программирования Турбо Паскаль.
Под алфавитом языка понимают совокупность допустимых символов. В языке Турбо Паскаль используются символы ASCII (американский стандартный код обмена информацией). Можно выделить четыре основные группы символов: символы, используемые в идентификаторах, разделители, специальные символы и неиспользуемые символы.
Идентификатор — это имя любого объекта языка. Он может состоять из латинских букв (a. z), цифр (0. 9) и знака подчеркивания и не должен начинаться с цифры. Прописные и строчные буквы в идентификаторах и зарезервированных словах считаются идентичными, они различаются лишь в строковых константах. Длина идентификатора не ограничена, но значимыми являются лишь первые 63 символа.
Разделители используются для отделения друг от друга идентификаторов, чисел и зарезервированных слов. К разделителям относятся, например, пробел и комментарий. В любом месте программы, где разрешается один пробел, их можно вставить любое количество.
Комментарии заключаются либо в фигурные скобки < комментарий 1 >, либо в символы (* комментарий 2 *) и могут занимать любое количество строк.
К специальным знакам относятся знаки пунктуации (. () []. ;), знаки операций и зарезервированные слова. Знаки операций могут быть как символьные (+, -, *, / и т.д.), так и буквенными (mod, div, not). Зарезервированные слова являются служебными и не могут быть переопределены пользователем, т.е. их нельзя использовать как имена пользовательских объектов.
Неиспользуемые символы — это коды ASCII, которые используются только в комментариях и символьных строках, но не в языке. К ним относятся все русские буквы, а также символы %,
Uses
Const
Раздел описания констант
Label
Раздел описания меток
Type
Раздел описания типов
Var
Раздел описания переменнных
Begin
End.
Начинается программа с заголовка. После заголовка на схеме представлены разделы описания констант, меток, типов, переменных, а также раздел, в котором подключаются используемые модули. Причем Турбо Паскаль вовсе не предписывает порядок в каком порядке должны идти эти разделы. Однако если в одном из разделов объявлен элемент программы, на который имеется ссылка в другом разделе, то описание, на которое имеется ссылка должно предшествовать ссылающему описанию. Например, если в разделе объявления переменных объявляется переменная того типа, который описывается в разделе описания типов, то сначала описывается тип, а затем переменная.
IntList = array[1..100] of Integer;
Обязательной частью является лишь тело программы, которое начинается словом begin, а заканчивается словом end с точкой. Операторы в Паскале разделяются точкой запятой.
Для запуска среды программирования Turbo Pascal 7.0 дайте команду Пуск→Все программы→Программирование→ Turbo Pascal 7.0. После запуска на экране появится оболочка:
Среда Турбо Паскаля 7.0 является приложение под DOS, а не под Windows и поэтому экран и приемы работы в этой системе немного отличаются от тех, к которым вы привыкли в Windows, хотя и имеют много общего.
Верхняя строка содержит «меню» возможных режимов работы Турбо Паскаля, нижняя — краткую справку о назначении основных функциональных клавиш. Вся остальная часть экрана принадлежит окну редактора, очерченному двойной рамкой и предназначенному для ввода и коррекции текстов программ. В его верхней строке приводятся имя файла, откуда был прочитан текст программы (новому файлу присваивается имя NONAME00.PAS), два специальных поля, используемых при работе с устройством ввода «мышь» (эти поля выделены квадратными скобками), и цифра 1 — номер окна. В Турбо Паскале можно работать одновременно с несколькими программами (или частями одной крупной программы), каждая из которых может располагаться в отдельном окне редактора. Среда позволяет использовать до 9-ти окон редактора одновременно.
После подготовки текста программы можно попытаться исполнить ее. Для этого дайте команду Run→Run или нажмите комбинацию клавиш [Ctrl]+[F9].
Если в программе нет синтаксических ошибок, то все действия выполняются последовательно одно за другим, при этом в небольшом окне сообщается о количестве откомпилированных строк и объеме доступной оперативной памяти.
Если на каком-либо этапе среда обнаружит ошибку, она прекращает дальнейшие действия, восстанавливает окно редактора и помещает курсор на ту строку программы, при компиляции или исполнении которой обнаружена ошибка. При этом в верхней строке редактора появляется диагностическое сообщение о причине ошибки.
Командой [Alt]+[F5] или Debug→User screen Вы в любой момент сможете просмотреть данные, выданные на экран в результате прогона программы.
Для возврата в режим редактирования программы нажмите любую клавишу.
Неотъемлемой составной частью среды Турбо Паскаля является встроенная справочная служба. Эта справка зависит от текущего состояния среды, поэтому справочную службу называют контекстно-чувствительной.
Существуют четыре способа обращения к. справочной службе непосредственно из окна редактора:
[F1] — получение контекстно-зависимой справки;
[Shift]+[F1] — выбор справки из списка доступных справочных сообщений;
[Ctrl]+[F1] — получение справки о нужной стандартной процедуре, функции, о стандартной константе или переменной;
[Alt]+[F1] — получение предыдущей справку.
Для сохранения и открытия программ используется меню File. При сохранении файла для имени файла действует правило 8.3. Попробуйте сохранить вашу программу в файл.
IV. Практическая часть.
В качестве примера рассмотрим программу вычисления площади прямоугольника (блок-схему этого алгоритма мы записывали на прошлом занятии):
writeln(‘Площадь равна: ‘,s:5:2);
Программа начинается со слова program. После служебного слова program записывается имя программы. В нашей программе именем является SquareRectangle. Имя программы записывается на английском языке и задается произвольно автором программы. В конце первой строки, после имени программы стоит «;» — точка с запятой.
Этот знак указывает на то, что некоторая инструкция закончена и за ней будет записана следующая инструкция. Точка с запятой является обязательным разделительным знаком в языке Паскаль.
Далее идет блок подключения модуля WinCrt (для Borland Pascal for Windows).
В следующем разделе описываются переменные. В программе используются 3 переменные (a, b, s), все они имеют тип real.
Далее в программе следует служебное, зарезервированное, слово begin (начать), которым начинается раздел операторов.
В этом разделе последовательно записываются команды, операторы, которые разделяются «;» — точкой с запятой. Они будут выполняться компьютером.
Значения переменных в нашей программе вводятся с клавиатуры. Для ввода ширины и длины используется процедура ввода readln. Подробнее о стандартных процедурах ввода и вывода мы поговорим позднее. Запустим программу и проверим ее работу.
Программа заканчивается служебным словом end, после которого стоит точка. Она является обязательной во всех паскалевских программах. Точка оповещает о конце текста программы.
Источник: poisk-ru.ru
Имя программы записывается после слова program
Приветствие, проверка присутствующих. Объяснение хода урока.
II. Актуализация знаний.
Для решения большинства задач существует множество готовых программ. Но для того чтобы лучше понимать все происходящее с компьютером и уверенно принимать правильные решения, рядовому пользователю необходимо обладать определенной компьютерной грамотностью.
Следует отметить, что большинство редакторов (например, Microsoft Office Word, Excel) имеют встроенные средства программирования, освоив которые можно значительно расширить свои возможности.
III. Теоретическая часть.
Появление алгоритмов связывают с зарождением математики. Более 1000 лет назад (в 825 году) ученый из города Хорезма Абдулла (или Абу Джафар) Мухаммед бен Муса аль-Хорезми создал книгу по математике, в которой описал способы выполнения арифметических действий над многозначными числами. Само слово алгоритм возникло в Европе после перевода на латынь книги этого математика.
Алгоритм – описание последовательности действий (план), строгое исполнение которых приводит к решению поставленной задачи за конечное число шагов.
Вы постоянно сталкиваетесь с этим понятием в различных сферах деятельности человека (кулинарные книги, инструкции по использованию различных приборов, правила решения математических задач. ). Обычно мы выполняем привычные действия не задумываясь, механически. Например, вы хорошо знаете, как открывать ключом дверь. Однако, чтобы научить этому малыша, придется четко разъяснить и сами эти действия и порядок их выполнения:
1. Достать ключ из кармана.
2. Вставить ключ в замочную скважину.
3. Повернуть ключ два раза против часовой стрелки.
Если вы внимательно оглянитесь вокруг, то обнаружите множество алгоритмов, которые мы с вами постоянно выполняем. Мир алгоритмов очень разнообразен. Несмотря на это, удается выделить общие свойства, которыми обладает любой алгоритм.
1. Дискретность (алгоритм должен состоять из конкретных действий, следующих в определенном порядке);
2. Детерминированность (любое действие должно быть строго и недвусмысленно определено в каждом случае);
3. Конечность (каждое действие и алгоритм в целом должны иметь возможность завершения);
4. Массовость (один и тот же алгоритм можно использовать с разными исходными данными);
5. Результативность (отсутствие ошибок, алгоритм должен приводить к правильному результату для всех допустимых входных значениях).
1. Линейный алгоритм (описание действий, которые выполняются однократно в заданном порядке);
2. Циклический алгоритм (описание действий, которые должны повторятся указанное число раз или пока не выполнено задание);
3. Разветвляющий алгоритм (алгоритм, в котором в зависимости от условия выполняется либо одна, либо другая последовательность действий)
4. Вспомогательный алгоритм (алгоритм, который можно использовать в других алгоритмах, указав только его имя).
Для более наглядного представления алгоритма широко используется графическая форма — блок-схема, которая составляется из стандартных графических объектов.
Пример записи алгоритма в виде блок-схемы:
Стадии создания алгоритма:
1. Алгоритм должен быть представлен в форме, понятной человеку, который его разрабатывает.
2. Алгоритм должен быть представлен в форме, понятной тому объекту (в том числе и человеку), который будет выполнять описанные в алгоритме действия.
Объект, который будет выполнять алгоритм, обычно называют исполнителем.
Исполнитель — объект, который выполняет алгоритм.
Идеальными исполнителями являются машины, роботы, компьютеры.
Компьютер – автоматический исполнитель алгоритмов.
Алгоритм, записанный на «понятном» компьютеру языке программирования, называется программой.
III. Практическая часть.
На ближайших нескольких уроках мы будем записывать алгоритмы на языке программирования Turbo Pascal. На этом уроке мы познакомимся с тем как вводить и запускать программу.
Современные среды программирования позволяют программистам создавать сложные и удобные программы, имеют множество дополнительных возможностей, но для первоначального знакомства с языком программирования не подходят, т.к. нам придется сначала долго изучать их интерфейс, прежде чем сможем написать простую программу. Поэтому знакомство с языком Turbo Pascal мы начнем, используя добрую старую оболочку. Пусть наши программы на этом этапе не будут выглядеть очень привлекательно, но освоив навыки программирования вы потом сможете создавать полезные и красивые программы.
Для запуска среды программирования Turbo Pascal 7.0 дайте команду Пуск→Все программы→Программирование→ Turbo Pascal 7.0. После запуска на экране появится оболочка:
Среда Турбо Паскаля 7.0 является приложение под DOS, а не под Windows и поэтому экран и приемы работы в этой системе немного отличаются от тех, к которым вы привыкли в Windows, хотя и имеют много общего.
Верхняя строка содержит «меню» возможных режимов работы Турбо Паскаля, нижняя — краткую справку о назначении основных функциональных клавиш. Вся остальная часть экрана принадлежит окну редактора, очерченному двойной рамкой и предназначенному для ввода и коррекции текстов программ. В его верхней строке приводятся имя файла, откуда был прочитан текст программы (новому файлу присваивается имя NONAME00.PAS), два специальных поля, используемых при работе с устройством ввода «мышь» (эти поля выделены квадратными скобками), и цифра 1 — номер окна. В Турбо Паскале можно работать одновременно с несколькими программами (или частями одной крупной программы), каждая из которых может располагаться в отдельном окне редактора. Среда позволяет использовать до 9-ти окон редактора одновременно.
Кроме окна (окон) редактора в Турбо Паскале используются также окна отладочного режима, вывода результатов работы программы, справочной службы, стека, регистров. По желанию они могут вызываться на экран поочередно или присутствовать на нем одновременно.
Для управления средой Турбо Паскаля можно использовать функциональные клавиши и их комбинации с клавишами ALT, CTRL и SHIFT. Вот некоторые из них:
Для переключения языка ввода используются комбинация клавиш [Ctrl]+[Shift] слева на латинскую раскладку, справа — на русскую.
Когда мы вводим программу, то работаем с текстовым редактором, встроенным в среду Турбо Паскаля.
Для создания текста программы нужно ввести этот текст с помощью клавиатуры. Положение курсора указывается желтым мигающим символом подчеркивания. Каждая команда вводится в отдельной строке. Для перехода на следующую строку нажмите клавишу [Enter]. Если текст программы не вмешается на экране можно воспользоваться полосами прокрутки.
Регистр записи команд значение не имеет.
Если Вы ошиблись при вводе очередного символа, его можно стереть с помощью клавиши со стрелкой (или надписью [Backspace]), расположенной над клавишей [Enter]. Клавиша [Delete] стирает символ, на который в данный момент указывает курсор, а команда [Ctrl]+[Y]- всю строку, на которой расположен курсор.
Следует помнить, что редактор Турбо Паскаля вставляет в конце каждой строки невидимый символ-разделитель. Этот символ вставляется клавишей [Enter], а стирается клавишами [Backspace] или [Delete]. С помощью вставки/стирания разделителя можно «разрезать»/«склеить» строки. Чтобы разрезать строку, следует подвести курсор к нужному месту и нажать Enter, чтобы склеить соседние строки, нужно установить курсор в конец первой строки (для этого удобно использовать клавишу [End]) и нажать [Delete] или установит курсор в начало второй строки (клавишей Home) и нажать [Backspace].
И еще об одной возможности редактора. Обычно редактор работает в режиме автоотступа. В этом режиме каждая новая строка начинается в той же позиции на экране, что и предыдущая. Режим автоотступа поддерживает хороший стиль оформления текста программы: отступы от левого края выделяют тело условного или составного оператора и делают программу более наглядной.
Теперь попробуем написать и запустить простейшую программу.
Напишите в окне программы текст:
Далее в программе следует служебное, зарезервированное, слово begin (начать), которым начинается раздел операторов.
В этом разделе последовательно записываются команды, операторы, которые разделяются » ; » — точкой с запятой. Они будут выполняться компьютером.
Программа заканчивается служебным словом end , после которого стоит точка. Она является обязательной во всех паскалевских программах. Точка оповещает о конце текста программы.
В нашем примере раздел операторов содержит один оператор write(‘Привет!’); который выводит сообщение на экран компьютера.
После подготовки текста программы можно попытаться исполнить ее. Для этого дайте команду Run→Run или нажмите комбинацию клавиш [Ctrl]+[F9].
Если в программе нет синтаксических ошибок, то все действия выполняются последовательно одно за другим, при этом в небольшом окне сообщается о количестве откомпилированных строк и объеме доступной оперативной памяти. Перед передачей управления загруженной программе среда очищает экран (точнее, выводит на экран окно прогона программы), а после завершения работы программы вновь берет управление компьютером на себя и восстанавливает на экране окно редактора.
Если на каком-либо этапе среда обнаружит ошибку, она прекращает дальнейшие действия, восстанавливает окно редактора и помещает курсор на ту строку программы, при компиляции или исполнении которой обнаружена ошибка. При этом в верхней строке редактора появляется диагностическое сообщение о причине ошибки. Все это позволяет очень быстро отладить программу, т.е. устранить в ней синтаксические ошибки и убедиться в правильности ее работы. Если ошибка возникла на этапе прогона программы, простое указание того места, где она обнаружена, может не дать нужной информации, так как ошибка может быть следствием неправильной подготовки данных в предыдущих операторах программы. В таких ситуациях обычно прибегают к пошаговому исполнению программы.
Командой [Alt]+[F5] или Debug→User screen Вы в любой момент сможете просмотреть данные, выданные на экран в результате прогона программы.
Для возврата в режим редактирования программы нажмите любую клавишу.
Попробуйте запустить программу еще. Каждый раз при запуске на экране будет выводится фраза «Привет!».
Для того, чтобы после вывода на экран курсор перемещался на новую строку исправьте оператор write(‘Привет!’) на writeln(‘Привет!’).
Неотъемлемой составной частью среды Турбо Паскаля является встроенная справочная служба. Если Вы достаточно хорошо владеете английским языком, у Вас не будет проблем при работе с Турбо Паскалем: в затруднительной ситуации достаточно нажать F1 и на экране появится необходимая справка. Эта справка зависит от текущего состояния среды, поэтому справочную службу называют контекстно-чувствительной. Например, если нажать F1 в момент, когда среда обнаружила ошибку в программе, в справке будут сообщены дополнительные сведения о причинах ошибки и даны рекомендации по ее устранению.
Существуют четыре способа обращения к. справочной службе непосредственно из окна редактора:
Познакомимся еще с одной возможностью среды. Дайте команду Debug→Output. На экране появиться окно вывода программы. Теперь добьемся того, чтобы на экране демонстрировались два окна одновременно: окно кода и окно вывода. Дайте команду Window→Cascade.
Двойная рамка, очерчивающая окно, свидетельствует о том, что именно это окно активно в данный момент.
Давайте посмотрим, что будет если вы ошибетесь при написании команды. Сделайте ошибку в программе, например, удалите точку в конце программы. При запуске программы вы получите сообщение об ошибке. Ошибочная команда будет выделена.
Для сохранения и открытия программ используется меню File. При сохранении файла для имени файла действует правило 8.3. Попробуйте сохранить вашу программу в файл.
Программирование в среде Microsoft Windows на языке Pascal
Для запуска среды программирования Borland Pascal for Windows 7.0 дайте команду Пуск→Все программы→Программирование→ Borland Pascal for Windows 7.0. После запуска на экране появится окно:
Чтобы набрать текст программы, достаточно дать команду File→New.
Перед началом ввода текста программы желательно установить шрифт, с котором вы будете работать. Желательно выбрать шрифт с кириллицей, т. е. такой, чтобы можно было бы набирать и русский текст.
Для установки шрифта следует выбрать в верхнем меню Options→Environment («Опции→Среда»).
Для чтобы программа, написанная в DOS, могла работать в среде Windows необходимо к ней подключить модуль WinCRT. Модуль WinCRT может быть использован для преобразования DOS-программ и создания небольших Windows программ.
Модуль представляет собой набор констант, типов данных, переменных, процедур и функций. Каждый модуль по своей структуре аналогичен отдельной программе. Вместе с тем структура модуля позволяет использовать его как своеобразную библиотеку описа-ний.
В Borland Pascal входит 7 модулей. На этом занятии мы познакомимся с одним из них — WinCRT. Более подробно с модулями мы познакомимся позднее.
Для подключения модуля необходимо добавить к программе строчку uses WinCrt;
После подготовки текста программы можно попытаться исполнить ее. Для этого дайте команду Run→Run или нажмите комбинацию клавиш [Ctrl]+[F9].
Знать, что такое алгоритм, свойства и виды алгоритмов, способы записи алгоритмов. Дополнительное задание: найдите информацию об истории возникновения языка программирования Turbo Pascal.
V. Вопросы учеников.
Ответы на вопросы учащихся.
Подведение итога урока. Выставление оценок.
На уроке мы познакомились с тем, что такое алгоритм, какими свойствами он обладает и как его можно записать. Начали знакомиться с программирование на языке Turbo Pascal и написали свою небольшую программу.
MyTest X —>
Компьютерное тестирование знаний учащихся, сертификация и аттестация сотрудников.
Деcять типов заданий, локальное и сетевое тестирование.
Обсудить на форуме и принять участие в создании банка тестов.
Разместите нашу кнопку
Источник: www.klyaksa.net
История создания языков программирования
Рассмотрим основные сведения об алгоритмических языках программирования, получивших наибольшее распространение среди программистов.
Fortran (Фортран). Это первый компилируемый язык, созданный Джимом Бэкусом в 50-е годы. Программисты, разрабатывавшие программы исключительно на ассемблере, выражали серьезное сомнение в возможности появления высокопроизводительного языка высокого уровня, поэтому основным критерием при разработке компиляторов Фортрана являлась эффективность исполняемого кода. Хотя в Фортране впервые был реализован ряд важнейших понятий программирования, удобство создания программ было принесено в жертву возможности получения эффективного машинного кода. Однако для этого языка было создано огромное количество библиотек, начиная от статистических комплексов и заканчивая пакетами управления спутниками, поэтому Фортран продолжает активно использоваться во многих организациях.
Cobol (Кобол). Это компилируемый язык для применения в экономической области и решения бизнес-задач, разработанный в начале 60-х годов. Он отличается большой «многословностью» – его операторы иногда выглядят как обычные английские фразы. В Коболе были реализованы очень мощные средства работы с большими объемами данных, хранящимися на различных внешних носителях.
На этом языке создано очень много приложений, которые активно эксплуатируются и сегодня. Достаточно сказать, что наибольшую зарплату в США получают программисты на Коболе.
А1gо1 (Алгол). Компилируемый язык, созданный в 1960 году. Он был призван заменить Фортран, но из-за более сложной структуры не получил широкого распространения. В 1968 году была создана версия Алгол 68, по своим возможностям и сегодня опережающая многие языки программирования, однако из-за отсутствия достаточно эффективных компьютеров для нее не удалось своевременно создать хорошие компиляторы. Язык Алгол сыграл большую роль в теории, но для практического программирования сейчас почти не используется.
Pascal (Паскаль). Язык Паскаль, созданный в конце 70-х годов основоположником множества идей современного программирования Никлаусом Виртом и названный в честь ученого Блеза Паскаля, во многом напоминает Алгол, но в нем ужесточен ряд требований к структуре программы и имеются возможности, позволяющие успешно применять его при создании крупных программных проектов. Изначально Паскаль был задуман как язык программирования для студентов. Он и сейчас является основным языком программирования, используемым в качестве учебного, во многих высших учебных заведениях. На базе языка Паскаль созданы несколько более мощных языков (Модула, Ада, Дельфи).
BASIC (Бейсик). Для этого языка имеются и компиляторы, и интерпретаторы, а по популярности он занимает первое место в мире. Бейсик был создан в 1964 г. Томасом Куртом и Джоном Кемени как язык для начинающих программистов, облегчающий написание простых программ. В настоящее время разработано несколько различных версий языка Бейсик, таких как GWBASIC, QBASIC, Pro-BASIC, Turbo-BASIC, Visual-BASIC и др.
С (Си). Данный язык был создан в лаборатории Ве11 и первоначально не рассматривался как массовый. Он планировался для замены ассемблера, чтобы иметь возможность создавать столь же эффективные и компактные программы, и в то же время не зависеть от конкретного типа процессора.
Си во многом похож на Паскаль и имеет дополнительные средства для прямой работы с памятью (указатели). На этом языке в 70-е годы написано множество прикладных и системных программ и ряд известных операционных систем (например, Unix). В настоящее время Си широко используется при создании системного программного обеспечения.
PL/1 (ПЛ/1). В середине 60-х годов компания 1ВМ решила взять все лучшее из языков Фортран, Кобол и Алгол и воплотить в одном языке программирования. В результате в 1964 году на свет появился новый компилируемый язык программирования, который получил название Programming Language One.
В этом языке было реализовано множество уникальных решений, полезность которых удается оценить только спустя 33 года, в эпоху крупных программных систем. По своим возможностям ПЛ/1 значительно мощнее многих других языков (Си, Паскаля). Например, в ПЛ/1 присутствует уникальная возможность указания точности вычислений – ее нет даже у Си++ и Явы. В настоящее время язык ПЛ/1 почти не используется.
Ada (Ада). Назван по имени леди Огасты Ады Лавлейс, дочери английского поэта Байрона и его отдаленной родственницы Анабеллы Милбэнк. В 1979 году сотни экспертов Министерства обороны США отобрали из 17 вариантов именно этот язык, разработанный небольшой группой под руководством Жана Ихбиа.
Он удовлетворил на то время все требования Пентагона, а к сегодняшнему дню в его развитие вложены десятки миллиардов долларов. Структура самого языка похожа на Паскаль. В нем имеются средства строгого разграничения доступа к различным уровням спецификаций, доведена до предела мощность управляющих конструкций.
Принципиально иное направление в программировании связано с методологиями непроцедурного программирования. Для этих целей используются непроцедурные языки программирования, которые можно разделить на объектные и декларативные. Объектно-ориентированный язык создает окружение в виде множества независимых объектов. Каждый объект ведет себя подобно отдельному компьютеру, их можно использовать для решения задач как «черные ящики», не вникая во внутренние механизмы их функционирования. Объектно-ориентированный подход к проектированию программных продуктов основан на:
– выделении классов объектов;
– установлении характерных свойств объектов и методов их обработки;
– создании иерархии классов, наследовании свойств объектов и методов их обработки.
Каждый объект объединяет как данные, так и программу обработки этих данных и относится к определенному классу. С помощью класса один и тот же программный код можно использовать для относящихся к нему различных объектов.
Из языков объектного программирования, популярных среди профессионалов, следует назвать прежде всего:
С++ (Си++). Си++ — это объектно-ориентированное расширение языка Си, созданное Бьярном Страуструпом в 1980 году. Множество новых мощных возможностей, позволивших резко повысить производительность работы программистов, наложилось на унаследованную от языка Си определенную низкоуровневость, в результате чего создание сложных и надежных программ потребовало от разработчиков высокого уровня профессиональной подготовки;
Java (Джава). Этот язык был создан компанией Sun в начале 90-х годов на основе Си++. Он призван упростить разработку приложений на основе Си++ путем исключения из него всех низкоуровневых возможностей. Но главная особенность этого языка – компиляция не в машинный код, а в платформно-независимый байт-код (каждая команда занимает один байт).
Этот байт-код может выполняться с помощью интерпретатора – виртуальной Java-машины, версии которой созданы сегодня для любых платформ. Благодаря наличию множества Java-машин программы на Джава можно переносить не только на уровне исходных текстов, но и на уровне двоичного байт-кода, поэтому по популярности язык Джава сегодня занимает второе место в мире после Бейсика. Язык Джава чрезвычайно эффективен для создания интерактивных Web-страниц;
Smalltalk (Смолток). Работа над этим языком началась в 1970 году в исследовательской лаборатории корпорации XEROX, а закончились спустя 10 лет, воплотившись в окончательном варианте интерпретатора SMALLTALK — 80. Данный язык оригинален тем, что его синтаксис очень компактен и базируется исключительно на понятии объекта.
В этом языке отсутствуют операторы или данные. Все, что входит в Смолток, является объектами, а сами объекты общаются друг с другом исключительно с помощью сообщений (например, появление выражения I+1 вызывает посылку объекту I сообщения «+», то есть «прибавить», с параметром 1, который считается не числом-константой, а тоже объектом). Больше никаких управляющих структур, за исключением «оператора» ветвления (на самом деле функции, принадлежащей стандартному объекту), в языке нет, хотя их можно очень просто смоделировать. Сегодня версия VisualAge for Smalltalk активно развивается компанией IВМ;
Delphi (Дельфи) – язык объектно-ориентированного «визуального» программирования. Явился развитием языка Паскаль.
При использовании декларативного языка программирования программист указывает исходные информационные структуры, взаимосвязи между ними и то, какими свойствами должен обладать результат. При этом процедуру его получения (то есть алгоритм) программист не строит. В этих языках отсутствует понятие «оператор».
Типичными представителями декларативных языков являются:
LISP (Лисп). Интерпретируемый язык программирования, созданный в 1960 году Джоном Маккарти. Ориентирован на структуру данных в форме списка и позволяет организовывать эффективную обработку больших объемов текстовой информации;
Prolog (Пролог). Создан в начале 70-х годов. Программа на этом языке, в основу которого положена математическая модель теории исчисления предикатов, строится из последовательности фактов и правил, а затем формулируется утверждение, которое Пролог будет пытаться доказать с помощью введенных правил. Человек только описывает структуру задачи, а внутренний «мотор» Пролога сам ищет решение с помощью методов поиска и сопоставления.
Структура программы на языке «Паскаль»
Чтобы иметь возможность решать любые задачи на компьютере необходимо “научить” машину всему, что нужно знать для получения результата. Компьютер работает в двоичном коде и понимает только свой – машинный язык. Поэтому необходимо последовательно разобрать весь процесс решения и перевести задачу на язык нулей и единиц.
Написать программу в двоичном коде очень сложно. Для того чтобы легко решать задачи на компьютере были созданы алгоритмические языки.