Пятница, 01.08.2025, 13:59
KORCHEMINFOO
Приветствую Вас Гость | RSS
Меню сайта
ВАЖНО!!!
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Язык программирования – формальная знаковая система, предназначенная для записи компьютерных программ. Язык программирования определяет набор лексических, синтаксических и семантических правил, задающих внешний вид программы и действия, которые выполнит исполнитель (компьютер) под ее управлением.
История развития языка программирования
В 1955 г. появился первый язык высокого уровня. Программы, написанные на таком языке, представляли собой набор уже не отдельных машинных команд, а более крупных элементов, называемых операторами данного языка. На языке высокого уровня исходная программа состояла из последовательности операторов. Именно такие языки и ориентированы на описание алгоритмов. Поэтому их еще называют алгоритмическими языками.
В 1955 году увидел свет первый алгоритмический язык Фортран. Он использовался для решения научно-технических и инженерных задач. Слово «Фортран» образовано от начальных слогов английских слов - formula translator (переводчик формул). Он был разработан сотрудниками фирмы IBM под руководством Джона Бэкуса. Основным назначением этого языка является программирование численных расчетов на ЭВМ.

Затем в 1960 г. появился Алгол (Algoritmic language - алгоритмический язык), также ориентированный на научное применение, в него было введено множество новых понятий, подхваченных позднейшими языками, например, понятие блочной структуры. Также при поддержке фирмы IBM появился язык Кобол (Cobol - сокращенное от английских слов Comnon business oriented language - общепринятый деловой ориентированный язык). Он был ориентирован на решение экономических задач, а точнее - на обработку информации.

Язык Бейсик (Basic - beginners all-parpouse sumbolic instraction code, что в переводе с английского означает «многоцелевой язык символических инструкций для начинающих») был разработан профессорами Дартмутского колледжа (СИГА) Т.Куртцем и Дж. Кемени в 1965 году для обучения студентов, незнакомых с вычислительной техникой. Этот язык, напоминающий Фортран, но более простой, быстро стал очень популярным. Особенно его популярность повысилась благодаря «взрыву микроинформатики» - появлению персональных микрокомпьютеров, где Бейсик стал основным языком программирования.
В 1967-1968 гг. появился язык PL/1 (Programming language - универсальный программно-ориентированный). Он также был создан на фирме IBM, но уже в качестве универсального языка программирования. Этот язык, как языки программирования СИ, Ада и Паскаль, может использоваться как для научных задач, так и для задач управления. Он очень мощный, но и очень сложный, используется лишь в высших учебных заведениях и научно-исследовательских центрах.
В 1970 г. профессор Никлаус Вирт создал в Цюрихском политехническом университете язык Паскаль (Pascal). Создатель языка назвал его в честь Блеза Паскаля первого конструктора устройства, которое теперь относится к классу цифровых вычислительных машин. 

 В 1980 г. появился язык Ада. Назван он в память об Аде Лавлейс - дочери английского поэта Лорда Байрона, первой программистки в истории вычислительной техники. Он был создан во Франции по заказу американского министерства обороны как универсальный язык программирования. Это самый новый и самый мощный из языков программирования, он унаследовал качества языков Паскаль и Алгол-68 и дополнительно приобрел многие другие качества: системное программирование, параллельность и т.д. Языки Лисп (List procssing language - язык обработки списков), разработанный американским профессором Джоном Маккарти в 1961 г., и Пролог (Prolog - programmation en logique - логическое программирование), разработанный Колмероэ и другими учеными университета Люммини во Франции в 1973 г., - это основные языки для задач, связанных с искуственным интеллектом.


Поколения

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

Характеристика

Первое

Машинные

Ориентированы на использование в конкретной ЭВМ, сложны в освоении, требуют хорошего знания архитектуры ЭВМ

Второе

Ассемблеры, Макроассемблеры

Более удобны для использования, но, по-прежнему машинно-зависимы

Третье

Языки высокого уровня

Мобильные, человеко-ориентированные,

проще в освоении

Четвертое

Непроцедурные, объектно-ориентированные, языки запросов,

параллельные

Ориентированы на непрофессионального пользователя и на ЭВМ с параллельной архитектурой

Пятое

Языки искусственного интеллекта,

экспертных систем и баз знаний,

естественные языки

Ориентированы на повышение интеллектуального уровня ЭВМ и интерфейса с языками



Структура программы на языке Паскаль

Программа, записанная на языке Паскаль, должна иметь заголовок и тело программы. Заголовок программы состоит из зарезервированного словаProgram и имени программы. В ТП 7.0, в отличие от стандартного Паскаля, эта строка необязательна. После заголовка программы в некоторых случаях записывается оператор Uses, используемый для подключения к тексту программы стандартных библиотечных модулей, например: Uses Crt, Graph, Strings, Printer;. Оператор Uses может быть использован в программе только один раз.

Тело программы состоит из шести разделов:

  1. раздел описания меток (Label);

  2. раздел описания констант (Const);

  3. раздел описания типов (Type);

  4. раздел описания переменных (Var);

  5. раздел описания процедур и функций;

  6. раздел операторов.

В заголовке программы указывается имя программы. Общий вид заголовка: Program имя;

Структура программыПример
Заголовок программыProgram MATR;
Оператор UsesUses Crt;
Тело
программы
(блок)
Описание
данных
1. Раздел описания меток (Label)Label 10, 20;
2. Раздел описания констант (Const)Const n=2; m=3;
3. Раздел описания типов (Type)Type Mat=array[1..n,1..m] of real;
4. Раздел описания переменных (Var)Var A:Mat; 
R:real; 
i, j:integer;
5. Раздел описания процедур и функций (Procedure, Function)
Procedure Sum(A:Mat;n,m:integer;Var R:real);
 Var i, j:integer;
Begin R:=0;
 For i:=1 To n Do
 For j:=1 To m Do
 R:=R+A[i,j];
End;
Procedure Pro(A:Mat;n,m:integer;Var R:real);
 Var i, j:integer;
Begin R:=1;
 For i:=1 To n Do
 For j:=1 To m Do
 R:=R*A[i,j];
End;
Описание 
действий
6. Раздел операторов
Begin
 ClrScr;
 For i:=1 To n Do
 For j:=1 To m Do Begin
 Read(A[i,j]);
 WriteLn(A[i,j]); End;
 10: If A[1,1]>=0 Then Sum(A,n,m,R)
 Else Pro(A,n,m,R);
 20: WriteLn('A(1,1)=',A[1,1],' R=',R);
End.

Типы данных

Целочисленные типы. Переменные целого типа могут принимать только целые значения. Использование десятичной точки в изображении целого числа недопустимо (например: 35.0 — неправильно, 35 — правильно). Если используются операнды целого типа, то операции сложение «+», вычитание «-», умножение «*», Mod и Div (см. прил. 3) дают результат целого типа. Операция mod означает взятие остатка от целочисленного деления (например: 13 Mod 5 = 3; — 5 Mod 2 = — 1). Операция div является операцией целочисленного деления с отбрасыванием остатка (например: 13 Div 5 = 2; — 5 Div 2 = — 2).

Чаще всего для обозначения переменных целого типа пользователи выбирают тип Integer, который может вмещать целые числа, лежащие в диапазоне от — 32768 до 32767.

Вещественные типы. Вещественный тип формируется из элементов подмножества вещественных чисел, представленных в форматах с фиксированной или плавающей точкой (например: 3.14, 2.5Е+01).

Чаще всего для обозначения переменных вещественного типа пользователи выбирают тип Real. Все операции над данными вещественного типа приближенные. Операции, дающие вещественные результаты, приведены в табл. 6.

Операция

Действие

Тип операнда

Тип результата

Арифметические
+
— 
*
/
Div
Mod


Cложение
Вычитание
Умножение
Деление
Целочисленное деление
Остаток от деления


целый или
вещественный
— 
— 
целый


целый или
вещественный
— 
вещественный
целый

Сравнения
=
<>
<
>
<=
>=
In 


Равенство
Неравенство
Меньше
Больше
Меньше или равно
Больше или равно
Присутствие в множестве


любой
— 
простой
— 
— 
— 
1-й операнд простой, 2-й — множество


логический
— 
— 
— 
— 
— 

Логические
Not 
Or 
And
Xor 


Отрицание
Дизъюнкция
Конъюнкция
Исключающее ИЛИ


логический
— 
— 


логический
— 
— 

С множествами
+
— 
*


Объединение
Разность
Пересечение


множество
— 


множество
— 

Таблица 6. Перечень операций языка Паскаль.

Символьный тип. Значениями символьного типа Char являются элементы конечного и упорядоченного множества символов. Символьные данные используются для облегчения общения человека с компьютером. К сожалению, не существует единого стандарта множества символов. Чаще всего используются символы американского стандарта ASCII (American Standard Code for Information Interchange).

Значения типа Char записываются одним символом, заключенным в апострофы (например: '*', 'A', '!'), или задаются непосредственно ASCII- кодом символа (например: #65 — код символа 'A'). В памяти компьютера переменная типа Char занимает один байт памяти.

В рамках этого типа десятичные цифры упорядочены в соответствии с их численными значениями (например: '5' < '6'). Буквы упорядочены в алфавитном порядке (например: 'A' < 'B').

Строковый тип. Тип данных String предназначен для хранения последовательности символов (элементов типа Char). Строка символов должна быть заключена в апострофы (например: 'строка символов'). Максимальная длина строки — 255 символов. В машине каждый символ строки занимает байт памяти. Кроме того, один байт отводится дополнительно для хранения информации о длине строки. Таким образом, область памяти, выделяемая под строку символов, всегда на один байт больше той, которую вы запрашиваете при объявлении переменной.

Логический тип. Данные логического типа Boolean могут принимать одно из двух значений, обозначаемых стандартными именами True (истина, 1) и False (ложь, 0). Эти величины упорядочены следующим образом: True > False. Чаще всего на практике используются следующие логические операции, дающие логические результаты применительно к логическим операндам:

Not — инверсия (логическое отрицание, операция «НЕ»);
And — конъюнкция (логическое умножение, операция «И»);
Or — дизъюнкция (логическое сложение, операция «ИЛИ»);
Xor — операция «исключающее ИЛИ».

Логические операции дают следующие результаты:

Not False = True; Not True = False;

False And False = False;False Or False = False;False Xor False = False;
False And True = False;False Or True = True;False Xor True = True;
True And False = False;True Or False = True;True Xor False = True;
True And True = True;True Or True = True;True Xor True = False.

К переменным логического типа могут применяться операции сравнения «=» и «<>».

Переменные типа Boolean занимают 1 байт памяти.

Интервальный тип (Тип-диапазон). Интервальный (ограниченный, Subrange) тип описывается так:

имя_типа = min .. max;

где min — левая граница диапазона, max — правая граница диапазона. Диапазон значений задается с помощью любого простого типа данных, за исключением вещественного. Например, запись Period=1975..1998; будет означать, что переменные типа Period могут принимать значения целых чисел, лежащих в интервале от 1975 до 1998. Если попытаться присвоить этим переменным значения, не входящие в заданный интервал, — это может привести к ошибке в программе.

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

имя_типа = (имя1, имя2,…, имяN);

где имя1, имя2,…, имяN — имена конкретных констант, включаемых в указанный тип. Эти значения упорядочены, т.е. имя1<имя2…имяN. Например, запись Color(Red, Yellow, Green, Blue); будет означать, что переменные типа Color могут принимать одно из перечисленных значений: Red, Yellow, Green или Blue. К переменным этого типа применимы операции сравнения. Значения переменных перечисляемого типа не могут вводиться оператором ReadLn и выводиться оператором WriteLn./p>

Copyright MyCorp © 2025Сайт создан в системе uCoz