В каком году был создан язык паскаль. Лабы по информатике, егэ. Цикл в фрагменте программы

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

Наоборот, в те времена ученые пробовали разные языки программирования для практического применения. И позже этот ученый позднее создал ещё два языка программирования – Оберон и Модула, которые, правда, не получили распространения среди специалистов. Если быть точным, то 1968 году была создана первая версия языка Паскаль (на основе АЛГОЛа), а 1970 году – первый компилятор.

Особенностью Паскаля является его структурная направленность – любую программу здесь можно описать в виде объединения отдельных структурных элементов, или блоков, в единое целое. Это так называемое структурное программирование, сменившее линейное программирование – простейшую организацию написания программ, когда команды процессору записываются одна за другой, без какой либо структуры.

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

Особенно это стало ясно после того, когда около 1970-го года профессор Хоар опубликовал две статьи: «Аксиоматическая основа программирования для вычислительных машин» и «О структурной организации данных», в которых делается попытка осмыслить правильность составления алгоритмов программ с математической точки зрения. Как раз язык программирования Паскаль и является первым из языков, в котором имеются все необходимые инструменты для проверки эффективности написанных программ.

Ещё одной отличительной особенностью Паскаля является его строгая типизация данных, среди которых возник новый ранее не использовавшийся тип – перечислимый. Фактор строгой типизации сделал репутацию Паскалю как дисциплинирующего языка, приучающий программиста к логическому мышлению.

В Паскале допускается несвязанность программного кода (в отличие от тогдашних языков COBOL и FORTRAN), то есть допускается сколь угодно большое наличие пустых строк, что удобно при форматировании при написании комментариев. Программу на Паскале можно написать хоть в одну строчку – она все ровно будет работать, если написана в соответствии с правилами.

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

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

Язык программирования создал профессор Высшей федеральной техничес кой школы в Цюрихе Николаус Вирт (Niklaus Wirth) и назвал его именем известного французского математика и философа Блеза Паскаля (Blaise Pascal, 1623-1662 гг.). Начало создания Паскаля связано с усилиями Н.Вирта и К.Хоора (C.A.Hoore) переработать язык программирования Алгол-60 и на его основе создать новый. Примерно в 1968 г. бал подготовлен проект языка и начата разработка его транслятора для вычислительной машины CDC 6400, который был готов в 1970 г. В 1971 г. было представлено первое официальное описание языка (Wirth N. The Programming Language Pascal // Acta Informatica. - 1971. Vol1.N1.)

Интенсивнее всего язык распространялся в 1972-1975 гг. Он удостоился всеобщего признания и стал основным языком публикации программ и преподавания дисциплины программирования. В 1975 г. была создана ассоциация пользователей Паскаля. Позже язык подвергся критике. Пользователи были не удовлетворены слишком строгими ограничениями некоторых конструкций языка. В 1977 г. была создана группа по разработке стандарта языка Паскаль. Ею руководил А.Эддиман (A.M.Addyman). В 1983 г. 1 декабря был объявлен международный стандарт языка Паскаль ИСО 7185.
(В.Тумасонис, В.Дагене, Г.Григас. "Справочник. Паскаль. Руководство программиста" Москва. Радио и связь. 1992г.)

В 1992 г. фирма Borland International выпустила два пакета программирования, основанные на использовании языка Паскаль - Borland Pascal 7.0 и Turbo Pascal 7.0.
Пакет Borland Pascal 7.0 учитывает многие новейшие достижения в программировании и практике создания программ и включает в себя три режима работы в обычном режиме операционной системе MS DOS, в защищенном режиме MS DOS и в среде Windows.Обладая рассширенными возможностями, пакет требует значительных ресурсов (~ 30 Mb на жестком диске и і 2 Mb ОЗУ). Пакет Turbo Pascal 7.0 обладает ограниченными возможностями и позволяет работать только в обычном режиме MS DOS, но может быть использован практически на любой машине (вплоть до 286) и стоит дешевле.
(А.П,Епанешников, В.А.Епанешников. "Программирование в среде Turbo Pascal 7.0" Мосвка. "Диалог-МИФИ". 1995)

На современных компьютерах некоторые модули Turbo Pascal 7.0 (например, CRT) работают некорректно. Лучше использовать Borland Pascal 7.0.
В настоящее время, язык Паскаль является общепризнанным языком обучения программированию, сочетающем в себе все основные свойства серьезного алгоритмического языка программирования высокого уровня и доступную форму, позволяющую начинающему программисту освоить технологию создания программы. Кроме того, существуют пакеты, основанные на использовании Паскаля (Delphi, компонентный Паскаль), использующие современный объектно-ориентированный подход.

Выберите интересующие Вас в pascal уроки:

Язык Pascal очень часто используется в сфере образования. Названием служит английское слово Pascal - имя знаменитого математика и философа из Франции — Блеза Паскаля, но с идеологией программирования это никак не связано.

История языка Паскаль

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

Изначально pascal создавался путем переработки Алгол-60. Где-то в 1968 году проект был подготовлен, и разработчики приступили к созданию транслятора, предназначенного для использования на вычислительной машине CDC 6400. В 1971 было анонсировано официальное его описание (Wirth N. The Programming Language Pascal // Acta Informatica. - 1971. Vol1.N1.).

Сам Никлаус Вирт в своих трудах указывает на то, что целью его создания является «построение небольшого и эффективного языка, способствующего хорошему стилю программирования, использующему структурное программирование и структурированные данные».

Особо популярным периодом распространения Паскаля были 1972-1975 года. Удачные на то время характеристики языка Паскаль и его возможности позволили ему не только удостоиться всеобщего признания, но и сделали его основным средством для преподавания дисциплины «Программирование» и для разработки программ. В 1975 году появляется целая ассоциация пользователей Паскаля. Но позднее язык подвергся критике. Ограничения основных конструкций языка pascal оказались слишком строги, и это сильно не понравилось пользователям. В 1977 г. появляется группа по разработке стандарта Pascal. Руководителем группы являлся А.Эддиман (A.M.Addyman). 1 декабря 1983 г. был создан международный стандарт языка, носящий название ИСО 7185.

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

Желаем Вам удачи!

История создания языка Паскаль В 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 был разработан в 1968-1971 гг. Никлаусом Виртом в Цюрихском институте информатики (Швейцария). Первоначальная цель разработки языка PASCAL - необходимость инструмента "для обучения программированию как систематической дисциплине". Однако очень скоро обнаружилась чрезвычайная эффективность языка PASCAL в самых разнообразных приложениях, от решения небольших задач вычислительного характера до разработки сложных программных систем - компиляторов, баз данных, операционных систем и т.д. К настоящему времени Pascal принадлежит к группе наиболее распространенных и популярных в мире языков программирования. Существуют многочисленные реализации языка практически для всех машинных архитектур, разработаны десятки диалектов и проблемно-ориентированных расширений языка Pascal.

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

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

Тем не менее, достоинства языка заставляли многие коммерческие и некоммерческие организации разрабатывать системы программирования на основе языка Паскаль.

Из числа последних выделяется фирма Borland, Turbo Pascal (затем Borland Pascal) которой был значительно расширен, были устранены многие недостатки языка, добавлены новые возможности. Язык стал богаче, но одновременно, потерял переносимость и общность.

Важным шагом в развитии языка, является появление свободного языка Паскаль GNU Pascal , который не только вобрал в себя черты других Паскалей, не только позволил наконец полностью отказаться от «грязных» приемов программирования, особенно присущих, скажем, Turbo Pascal , но и обеспечил черезвычайно широкую портабельность написанных на нем программ (более 20 различных платформ, под более чем 10 различными операционными системами).

В настоящий момент пользуются популярностью такие версии языка как TMT Pascal , Free Pascal и GNU Pascal . Продолжает использоваться и Borland Pascal . Развитием языка Borland Pascal является Object Pascal - версия языка Паскаль расширенная средствами объектно-ориентированного программирования. Последние версии Borland Pascal лежат в основе среды программирования Delphi .