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

История создания языка Паскаль В 1965 году был объявлен конкурс по созданию нового языка программирования - преемника языка АЛГОЛ-60. Участие в конкурсе принял швейцарский учёный, поляк по происхождению, Никлаус Вирт, работавший доцентом на факультете информатики Стэнфордского университета. Проект предложенный им был отвергнут комиссией в 1967 году. Но Вирт не прекратил работу над созданием нового языка. Вернувшись в Швейцарию, совместно с сотрудниками Швейцарского федерального института технологии в Цюрихе, он уже в 1968 году разработал первую версию языка Паскаль. Язык назван в честь великого французского математика и механика Блеза Паскаля, в 1648 г. создавшего первую счётную машину. В 1971 г. Н. Вирт выпустил описание своего языка, а в 1975 г. было разработано руководство для пользователей Паскаля.

Pascal ABC - Система предназначена для обучения программированию на языке Паскаль и ориентирована на школьников и студентов младших курсов. Эта система призвана осуществить переход от простейших программ к модульному, объектно-ориентированному, событийному и компонентному программированию. Многие концепции в Pascal ABC упрощены, что позволяет использовать их на более ранних этапах обучения. Модуль графики обходится без объектов, хотя его возможности практически совпадают с графическими возможностями Borland Delphi.

Структура программы Заголовок program NAME; Раздел описаний label; const; type; var; procedure, function; Блок основных операторов begin раздел операторов end.

Первая программа на языке Паскаль в среде Турбо Program Example_1; Var a, b, rez: Integer; Begin Write(‘Введите два числа через пробел ’); Readln(a, b); rez: = a*b; Writeln(‘Их произведение = ’, rez); End.

Пешеход шел по пересеченной местности. Его скорость движения по равнине v 1 км/ч, в гору - v 2 км/ч и под гору - v 3 км/ч. Время движения соответственно t 1, t 2 и t 3 ч. Какой путь прошел пешеход? 1. Ввести v 1, v 2, v 3, t 1, t 2, t 3. 2. S 1: = v 1 * t 1. 3. S 2: = v 2 * t 2. 4. S 3: = v 3 * t 3. 5. S: = S 1 + S 2 + S 3. 6. Вывести значение S. 7. Конец. Задание Записать программу на языке Turbo. Pascal.

ЦЕЛЫЕ ТИПЫ тип диапазон значений Shortint Integer Longint -128. . 127 -32768. . 32767 -2147483648. . 2147483647 требуемая память 1 байт 2 байта 4 байта Byte Word 0. . 255 0. . 65535 1 байт 2 байта

ДЕЙСТВИТЕЛЬНЫЕ ТИПЫ Тип Диапазон значений Количество цифр мантиссы Требуемая память (байт) Real 2. 9 e-39. . 1. 7 e+38 1. 5 e-45. . 3. 4 e+38 11 6 7 4 Single Double 5. 0 e-324. . 15 1. 7 e+308 Extended 3. 4 e-4932. . 19 1. 1 e+4932 8 10

Операции, используемые для работы с целыми переменными Знак операции Назначение Приоритет + Сложение 2 - Вычитание 2 * Умножение 1 Целая часть от деления Остаток от деления 1 div mod 1

Примеры 15 div 3 = 5; 15 mod 3 = 0; 18 div 5 = 3; 18 mod 5 = 3; 123 div 10 = 12, 123 mod 10 = 3, 7 div 10 = 0. 7 mod 10 = 7.

Пример: Дано натуральное трехзначное число n, в записи которого нет нулей. Составить алгоритм сложения цифр трехзначного числа. 1. Ввести число n 2. C: = n mod 10 {разряд единиц} 3. A: = n div 100 {разряд сотен} 4. B: = n div 10 mod 10 {десятки} 5. S: = A+B+C 6. Вывод S 7. Конец Задание: Напишите программу на языке Turbo Pascal.

При записи алгебраических выражений используют арифметические операции (сложение, умножение, вычитание, деление), функции Pascal, круглые скобки. Порядок действий при вычислении значения выражения: 1) вычисляются значения в скобках; 2) вычисляются значения функций; 3) выполняется унарные операции (унарный минус - смена знака); 4) выполняются операции умножения и деления (в том числе целочисленного деления и нахождения остатка от деления); 5) выполняются операции сложения и вычитания.

Встроенные математические функции языка Pascal Математическая запись Запись на Pascal Назначение cos x cos(x) Косинус x sin x sin(x) Синус x ex exp(x) Значение e в степени x [x] trunc(x) Целая часть числа x |x| abs(x) Модуль числа x sqrt(x) Корень квадратный из x {x} frac(x) Дробная часть числа x arctg x arctan(x) Арктанкенс числа x ln x ln(x) Натуральный логарифм x p Pi Число ПИ x 2 sqr(x) Квадрат числа x

Возведение в степень (кроме возведения в квадрат и возведения в степень числа e) отсутствует. Для возведения в произвольную степень можно воспользоваться очевидным равенством: xy=e y ln x Для возведения числа в натуральную степень можно написать собственную функцию. Например, z=xy, где x, y - натуральные, это сделать так: Z: = Round(Exp(Y * Ln(X))).

Расчёт по формуле Примеры записи математических выражений: Математическая запись 2 x – 7 x + 6 Запись на Pascal Sqr(x) - 7 * x + 6 (Abs(x) - Abs(y)) / (1 + Abs(x * y)) Ln(Abs((y - Sqrt(Abs(x))) * (x - y / (z + Sqr(x) / 4))))

Задача. Вычислить значение выражения Program Expression; Var X, Z: Real; Begin Write("Введите значения переменной X: "); Read. Ln(X); Z: = 6 * ln(sqrt(exp(x+1)+2*exp(x)*cos(x))) / ln(x - exp(x+3) * sin(x)) + abs(cos(x) / exp(sin(x))); Write. Ln("Значение выражения: ", Z: 12: 6); End.

Ветвление - такая форма организации действий, при которой в зависимости от выполнения некоторого условия совершается одна или другая последовательность действий

Оператор ветвления в полном варианте IF (условие) THEN (операторы) ELSE (операторы); условие - записывается с помощью знаков сравнения и принимает два значения: да или нет IF A>B THEN max: =A ELSE max: =B; Сложные условия составляют из простых с помощью логических операций (OR, AND, NOT) IF (A>B)AND(A>C) THEN max: =A ELSE max: =100;

Src="http://present5.com/presentation/223935287_384486868/image-22.jpg" alt="Оператор ветвления в неполном варианте IF (условие) THEN (операторы); IF B >A THEN max:"> Оператор ветвления в неполном варианте IF (условие) THEN (операторы); IF B >A THEN max: =В;

Задача 2. Дано действительное число a. Вычислить f(a), если Program Us 1; Var x, F: Real; Begin Write. Ln("Введите действительное число: "); Read. Ln(x); IF x

Задача 3. Записать логическое выражение, принимающее значение TRUE, если точка лежит внутри заштрихованной области, иначе - FALSE. Прежде всего, обратим внимание на то, что эту сложную фигуру целесообразно разбить на несколько более простых: треугольник, лежащий в I и IV координатных четвертях и треугольник, лежащий во II и III четвертях. Таким образом, точка может попасть внутрь одной из этих фигур, либо на линию, их ограничивающую. Чтобы точка попала внутрь области, необходима истинность каждого из отношений, поэтому над ними выполняется операция AND. Так вся область была разбита на несколько, то между отношениями, описывающими каждую из них, используется операция OR. Учитывая приведенные здесь соображения и записав уравнения всех ограничивающих фигуру линий, получаем искомое логическое выражение: (X >= 0) And (Y >= 1. 5 * X – 1) And (Y = – 1. 5 * X – 1) And (Y

САМОСТОЯТЕЛЬНАЯ РАБОТА Написать программу, которая вводит координаты точки (x, y) и определяет, попадает ли точка в заштрихованную область на рисунке. Попадание на границу области считать попаданием в область.

Задача 1. Даны действительные числа x, y. Если x и y отрицательны, то каждое значение заменить модулем; если отрицательно только одно из них, то оба значения увеличить на 0, 5; если оба значения неотрицательны и ни одно из них не принадлежит отрезку , то оба значения уменьшить в 10 раз; в остальных случаях x и y оставить без изменения. Разработаем алгоритм решения задачи, после чего напишем программу. Алгоритм запишем словесно: 1)ввести значения x, y; 2) если x

Program Usl; Var X, Y: Real; Begin Write("Введите два действительных числа "); Read. Ln (X, Y); If (X = 0. 5) AND (X = 0. 5) AND (Y

ОПЕРАТОР ВЫБОРА Кроме условного оператора в качестве управляющей структуры довольно часто используется оператор выбора CASE. Эта структура позволяет переходить на одну из ветвей в зависимости от значения заданного выражения. Оператор выбора позволяет заменить несколько операторов развилки. Запись оператора выбора CASE K OF A 1: серия 1; A 2: серия 2; . . . AN: серия N ELSE серия N + 1 END;

Задача 1. В старояпонском календаре был принят двенадцатилетний цикл. Годы внутри цикла носили названия животных: крысы, коровы, тигра, зайца, дракона, змеи, лошади, овцы, обезьяны, петуха, собаки и свиньи. Написать программу, которая позволяет ввести номер года и печатает его название по старояпонскому календарю. Справка: 1996 г. - год крысы - начало очередного цикла. Поскольку цикл является двенадцатилетним, поставим название года в соответствие остатку от деления номера этого года на 12. Program Goroskop; Var Year: Integer; Begin Write("Введите год "); Read. Ln(Year); CASE Year MOD 12 OF 0: Write. Ln("Год Обезьяны"); 1: Write. Ln("Год Петуха"); 2: Write. Ln("Год Собаки"); 3: Write. Ln("Год Свиньи"); 4: Write. Ln("Год Крысы"); 5: Write. Ln("Год Коровы"); 6: Write. Ln("Год Тигра"); 7: Write. Ln("Год Зайца"); 8: Write. Ln("Год Дракона"); 9: Write. Ln("Год Змеи"); 10: Write. Ln("Год Лошади"); 11: Write. Ln("Год Овцы") END; END.

САМОСТОЯТЕЛЬНАЯ РАБОТА 1) Написать программу, позволяющую по вводимому номеру дня недели вывести название дня. 2) Для двух целых чисел надо определить, является ли их сумма четным числом или нет. Для проверки четности используем условие: остаток от деления на 2 четного числа равен 0. Д/З Составить программу, которая по введенному номеру месяца выводит на экран название времени года.

Задача 2. Составить программу, которая по введенному номеру дня недели выводит на экран его название. Program days; Var day: integer; Begin Write(‘Введите номер дня недели’); Readln(day); Case day of 1: writeln(‘Понедельник’); 2: writeln(‘Вторник’); 3: writeln(‘Среда’); 4: writeln(‘Четверг’); 5: writeln(‘Пятница’); 6: writeln(‘Суббота’); 7: writeln(‘Воскресенье’) else writeln(‘Такого дня нет’); end.

Пример. Составить программу, которая по введенному номеру месяца выводит на экран название времени года. Program m; Var k: byte; Begin Write(‘Введите номер месяца’); Readln(k); Case k of 1, 2, 12: writeln(‘Зима’); 3, 4, 5: writeln(‘Весна’); 6, 7, 8: writeln(‘Лето’); 9, 10, 11: writeln(‘Осень’) else writeln(‘Такого месяца нет’); end.

Контрольные вопросы 1) Какую управляющую структуру Паскаля нужно использовать, если проверяемое выражение может принимать несколько возможных значений, и в каждом случае необходимо выполнять разные действия? 2) Чем отличается линейный алгоритм от ветвления? 3) Какие ключевые слова используются в Паскале для организации ветвления? 4) Чем полное ветвление отличается от неполного? 5) Как оформлять текст программы, чтобы он был понятнее? 6) Что необходимо использовать, если в случае истинности некоторого условия нужно выполнить несколько операторов? 7) В каком случае количество операторов begin в программе не должно соответствовать количеству операторов end?

Язык программирования Pascal был создан Никлаусом Виртом, и назван в честь французского философа и математика XVII в. Блеза Паскаля. В то время Вирт был профессором информатики в Федеральном техническом университете в Швейцарии и нуждался в языке, с помощью которого можно было обучать студентов навыкам программирования.

Концепция Паскаля была разработана Н. Виртом примерно в 1970 году и Паскаль быстро получил широкое распространение благодаря легкости его изучения, наглядности составленных на нем текстов программ. Поскольку Паскаль послужил основой для разработки других языков программирования, таких как Ада и Модула-2, и поскольку многие языки содержат аналогичные Паскалю структуры, знание Паскаля является солидной базой для изучения других языков программирования.

В середине 70-х годов была создана попытка разработать международный стандарт на Паскаль. В результате в 1982 году появился стандарт ИСО 7185.

Язык Паскаль стараниями Андерса Хейлсберга превратился в мощную профессиональную систему программирования Turbo Rascal. После просуществовавшей сравнительно недолго и не получившей широкое распространения версии 1.0 в середине 1984 года появляется версия 2.0. Распространение которой пошло стремительными темпами. К осени 1985 года появляется версия3.0, отличающаяся от версии 2.0 следующими особенностями: компилятор и редактор стали работать существенно быстрее, появилась возможность передачи параметров в программу с помощью команды RUN, стал возможным вызов MS-DOS из программы, стала удобной работа с файлами. С начала 1988 года начинает распространяться версия 4.0.

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

Появление инструментальных средств Borlаnd Pascal with Objects и Delphi для разработки программ в среде Windows лишний раз показала какие по истине неисчерпаемые возможности таит в себе Паскаль. Borland Pascal и используемый в Delphi язык Object Pascal основываются на Turbo Pascal и развивают его идеи.

Delphi - компилятор языка Pascal. Delphi 1 был первым инструментарием разработки Windows приложений, объединившим в себе оптимизирующий компилятор, визуальную среду программирования и мощные возможности работы с базами данных. Годом позже Delphi 2 предложил все то же, но на новом уровне современной 32-битной операционной системы Windows 95 и Windows NT. Кроме того, Delphi 2 предоставил программисту 32-битовый компилятор, создававший более быстрые и эффективные приложения, мощные библиотеки объектов.

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

Delphi 4 является очередным шагом в эволюции компиляторов Паскаля с тех времен, когда более 16 лет назад Андерс Хейлсберг создал первый компилятор Turbo Pascal.

1. Разработчиком языка Паскаль является:
б) Никлаус Вирт

2. Что из нижеперечисленного не входит в алфавит языка Паскаль?
в) Русские строчные и прописные буквы

3. Какая последовательность символов не может служить именем в языке Паскаль?
г) 2d

4. Вещественные числа имеют тип данных:
а) real

5. В программе на языке Паскаль обязательно должен быть:
в) программный блок

6. Какого раздела не существует в программе, написанной на языке Паскаль?
б) примечаний

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

8. Разделителями между операторами служит:
б) точка с запятой

9. Описать переменную – это значит указать ее:
б) имя и тип

10. В данном фрагменте программы:

Ошибкой является:
б) не определенное имя переменной

11. Какая клавиша нажимается после набора последнего данного в операторе read?
а) Enter

12. При присваивании изменяется:
в) значение переменной

13. Для вывода результатов в Паскале используется оператор:
в) write

14. Для вычисления квадратного корня из х используется функция:
в) sqrt (x)

15. Для генерации случайного целого числа из интервала }