МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РФ
ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ
ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ
ВЫСШЕГО ОБРАЗОВАНИЯ
«Мордовский государственный педагогический институт
имени М.Е. евсевьева»
Физико-математический факультет
Кафедра информатики и вычислительной техники
РЕФЕРАТ
Моделирование циклических процессов в расширении языка Pascal
Автор курсовой работы: И.И.Якимкина, студент III курса группы МДМ-115 очной формы обучения__________________________________________
дата подпись
44.03.05 Педагогическое образование. Профиль Математика. Информатика
Руководитель: Т.В Кормилицына, канд. пед. н., доцент_____________________
дата подпись
Саранск 2017
Содержание
1. Расширения языка Pascal и средства программирования циклов………3
2. Примеры программирования циклов с использованием расширений языка Pascal…………………………………………………………………………………………………………..7
Список используемых источников…………………………………………………………….
1 Расширения языка Pascal и средства программирования циклов
Язык Паскаль получил свое название в честь великого французского ученого, физика-математика Блеза Паскаля, который в 1642 г. изобрел счетную машину для арифметических операций – Паскалево колесо. История создания языка Паскаль начинается с 1965 года, когда международная федерация по обработке информации IFIP предложила нескольким специалистам в области информатики принять участие в разработке нового языка программирования – приемника АЛГОЛА-60. Среди них был швейцарский ученый, работавший доцентом информатики Стенфордского университета Николаус Вирт. В конце 1968 года Вирт и сотоварищи из швейцарского федерального института технологии в Цюрихе разработали первую версию Паскаля, а спустя 2 года – 1-й вариант компилятора. В 1971 году Вирт выпустил описание своего языка.
Одним из достоинств языка Паскаль является то, что он воплотил в себе идею структурного программирования, суть которой заключается в том, что с помощью нескольких конструкций можно выразить в принципе любые алгоритмы: линейные, ветвление, циклические конструкции.
При создании и совершенствовании языка Вирт ввел много новшеств, в частности, изобрел синтаксические диаграммы, с помощью которых удобно представлять конструкции языка, первый ввел в алфавит квадратные скобки, высказал идею решения проблемы переносимости Пи-системы, которая заключается в том, что написанная на Паскале программа транслируется в Пи-код, в машинный язык некоторой идеальной машины, а затем интерпретируется на реальных машинных языках. Он выявил и ряд недостатков: отсутствие операции возведения в степень, понятие отдельно транслируемого модуля, затрудняющее тем самым создание больших программ и др.
Кроме авторской версии, стали появляться различные его расширения и диалекты. Например: УКСД Паскаль, Паскаль-80, ЭППЛ-Паскаль, ТУРБО-Паскаль, Квик-Паскаль.
В 1986 году фирма Apple разработала объектное расширение языка Паскаль, получив в результате Object Pascal. Он был разработан группой Ларри Теслера, который консультировался с Никлаусом Виртом.
Важным шагом в развитии языка является появление свободных реализаций языка Паскаль Free Pascal и GNU Pascal, которые не только вобрали в себя черты множества других диалектов языка, но и обеспечили чрезвычайно широкую переносимость написанных на нём программ.
Кроме того, в Южном федеральном университете разработан PascalABC.NET – язык программирования Паскаль, включающий большинство возможностей языка Delphi, а также ряд собственных расширений. Он основан на платформе Microsoft.NET и содержит практически все современные языковые средства.
Для всех операторов цикла характерно следующая особенность. Повторяющиеся вычисления записываются всего лишь один раз. Вход в цикл возможен только через его начало. Переменные оператора цикла должны быть определены до входа в циклическую часть. Необходимо предусмотреть выход из цикла: или по естественному его окончанию, или по оператору перехода.
Цикл содержит:
1) подготовку (начало) цикла. (Управляющую переменную, ее начальное, конечное значение и шаг приращения);
2) тело цикла (повторяющиеся операторы);
3) изменение значения управляющей переменной на величину шага;
4) проверку на окончание цикла.
Оператор цикла с параметром используется в тех случаях, когда заранее известно, сколько раз должна повторяться циклическая часть программы. Оператор цикла имеет вид:
Рисунок 2.1 – Оператор цикла с параметром
При программировании циклов с параметром необходимо помнить следующие правила организации цикла:
1) параметр цикла, начальное и конечное значения, должны быть одинакового типа, их тип может быть любым скалярным типом (стандартным, перечисляемым, ограниченным), кроме вещественного;
2) очередное значение параметра вычисляется автоматически, для целого типа шаг изменения значения параметра цикла равен 1 при TO и -1 при DOWNTO;
3) запрещено изменять внутри тела цикла значение управляющей переменной цикла;
4) запрещено входить в цикл с помощью оператора GOTO, минуя оператор FOR,;
5) цикл не выполняется вообще, если начальное значение больше (при DOWNTO - меньше), чем конечное;
6) после служебного слова DO может стоять только один оператор; если в цикле нужно выполнить группу операторов, то их заключают в скобки BEGIN-END;
7) из составного оператора, входящего в оператор цикла, можно выйти до окончания этого цикла с помощью оператора GOTO, тогда последнее значение параметра цикла сохраняется.
Цикл с предусловием используется, как правило, в тех случаях, когда заранее неизвестно число повторений цикла. Форма записи оператора цикла с предусловием: В цикле с предусловием тело цикла заключается в операторные скобки В теле цикла с предусловием и постусловием необходимо указывать изменение управляющей переменной на величину шага.
Рисунок 2.2 – Цикл с предусловием
Здесь WHILE (Пока) DO (выполнить) – служебные слова. До начала циклов с предусловием и постусловием необходимо указывать начальное значение управляющей переменной.
Цикл с постусловием используется, как правило, в тех случаях, когда заранее неизвестно число повторений цикла.
Рисунок 2.3 - Цикл с постусловием
2 Примеры программирования циклов с использованием расширений языка Pascal
Пример использования цикла с параметром
Вычислите степень y = an действительного числа a с натуральным показателем n. Воспользуемся для вычислений следующей формулой:
До начала цикла (подготовка цикла) y:= 1, на каждом шаге цикла (для i = 1,2,...,n) - y:= y*a. Цикл с параметром i будет выполнен n раз.
Программа решения задачи имеет вид:
(*ОПРЕДЕЛЕНИЕ СТЕПЕНИ ВЕЩЕСТВЕННОГО ЧИСЛА*)
PROGRAM STEPEN; {Имя программы}
VAR {Раздел описания переменных}
A,Y:REAL;
I,N:INTEGER;
BEGIN (*STEPEN*)
WRITELN ('ВВЕДИТЕ ЧИСЛО И СТЕПЕНЬ ЧИСЛА'); {Вывод сообщения}
READ (A,N); {Ввод значения переменных}
Y:=1; {Ввод начального значения}
FOR I:=1 TO N DO { цикл для вычисления степени}
Y:=Y*A; {Вывод сообщения}
WRITELN (N,'СТЕПЕНЬ ЧИСЛА',A); {Вывод сообщения}
WRITELN ('РАВНА',Y) {Вывод результата}
END. (*STEPEN*). {Конец программы}
Пример использования цикла с предусловием
Составить программу для вычисления значения функции y = ax2. Переменная х изменяется от 5 до 25 с шагом 1, полученный результат вывести на экран.
Программа решения задачи имеет вид:
program pred5; {заголовок программы}
var {раздел описания переменных}
x:integer;
a,y:real;
begin
writeln ('Введи параметр a '); {Вывод комментария}
readln (a); {Ввод с клавиатуры значения a}
y:=0; {Обнуление переменной для накапливания суммы}
x:=5; {Задание начальных условий}
while x<=25 do {Начало цикла с предусловием}
begin;
y:=a*x*x; {Тело цикла с предусловием}
x:=x+1; {изменение переменной цикла на величину шага}
end; {конец цикла}
writeln ('Функция равна ',y); {вывод результата}
end. {Конец программы}
3.Пример использования цикла с постусловием
Составить программу для вычисления значения функции y = ax2 . Переменная х изменяется от 5 до 25 с шагом 1, полученный результат вывести на экран.
Программа решения задачи имеет вид:
program post3; {заголовок программы}
var {раздел описания переменных}
x:integer;
a,y:real;
begin
writeln ('Вводи параметр a '); {Вывод сообщения}
readln (a); {Ввод с клавиатуры значения a}
y:=0; {Обнуление переменной для накапливания суммы}
x:=5; {Задание начальных условий}
repeat; {Начало цикла с постусловием}
y:=a*x*x; {Тело цикла с постусловием}
x:=x+1; {изменение переменной цикла на величину шага}
until x>25; {проверка условия на выход из цикла}
writeln ('Функция равна ',y); {вывод результата}
end. {Конец программы}
Список используемых источников
Акулов, Л. Г. Информатика. Основы программирования на языке Pascal.Учебное пособие. / Л. Г. Акулов, Р. С. Богатырев, В. Ю. Наумов. – Волгоград : ВолгГТУ, 2013. – 247 с.
Васюкова Р.Д., Практикум по основам программирования, Язык ПАСКАЛЬ, М, ВШ, 2014
Гольденберг В.А. Введение в программирование. – М.: Харвест, 2014. С, 82
Грогоно Питер Программирование на языке Паскаль. — М.: «Мир», 2015.
Долинер, Л. И. Основы программирования в среде PascalABC.NET: учебное пособие / Л. И. Долинер. – Екатеринбург : Изд-во Урал. ун-та, 2014. – 129 с.
Зыков, С. В. Программирование. Объектно-ориентированный подход: учебник и практикум для академического бакалавриата / С. В. Зыков. – М. : Издательство Юрайт, 2016. – 155 с.
Йенсен К., Вирт Н. Паскаль. Руководство для пользователя и описание языка. — М.: «Финансы и статистика», 2014.
Комарова, Е. С. Практикум по программированию на языке Паскаль: учебное пособие / Е. С. Комарова. – М. : Директ-Медиа, 2015. – Ч. 2. – 123 с.
Копытин, А. В. Основы программирования в системе Pascal ABC / А. В. Копытин, Д. И. Соломатин, А. И. Другалев. – Воронеж : Издательско-полиграфический центр Воронежского государственного университета, 2016.– 79 с.
Математический энциклопедический словарь М., «Советская энциклопедия», 2014
Махно, В. В. Основы программирования графики. Мелодические указания. Часть 1 / В. В. Махно, С. С. Михалкович, М. В Пучкин. – Ростов-на-Дону, 2017. – 49 с.
Немнюгин С.А. TurboPASCAL С-П Изд-во Питер 2013.
Новичков В.С., Алгоритмические языки в техникуме, ПАСКАЛЬ, М, 2015
Пратт Т. Языки програмирования. – М., 2012. – 688 с.
Перминов Олег Николаевич Язык программирования Паскаль : Справочник. — М.: «Радио и связь», 2013. — С. 128. — ISBN 5-256-00311-9.
Смирнов И. Как рождаются и умирают языки программирования //Hard'n'Soft 2013,. - №12,
Шаньгин В.Ф., Поддубная Л., серия ПО ЭВМ кн.7, М, ВШ,2015
Фаронов В.В. TurboPascal 7.0.М. «Нолидж», 2015
Фаронов А.В. Delphi Програмирование на языке высокого уровня В. В. М., 2014. - 640 с.
Флэнэген Д. "JAVA in a nutsell"Издательство "BHV" 2013 г
Хигман В. Сравнительное изучение языков программирования. - M.: Мир, 2012 С. 13
Delphi Программирование на языке высокого уровня Фаронов В. В. Питер 2014. - С. 352
Wagner, J., The Search for Signs of Intelligent Life in the Universe, New York, NY: Harper and Row, 2016
Turbo Pascal: практикум. - СПб.: Питер, 2012. - 256 с.: ил.
Turbo Pascal / 2-е изд., перераб., - Вологда: МП "МИК", 2014. - 342с.
Чтобы скачать материал, введите свой E-mail, укажите, кто Вы, и нажмите кнопку
Нажимая кнопку, Вы соглашаетесь получать от нас E-mail-рассылку
Если скачивание материала не началось, нажмите еще раз "Скачать материал".
Данный реферат направлен на расширение кругозора в области моделирования циклических процессов в расширении языка Паскаль.Pascal - один из языков программирования, который помогает писать «структурированные» программы в таком виде, в котором структура программы должна непосредственно отражать структуру задачи. Эта особенность языка Pascal, а также его достаточная простота из-за интуитивной понятийности его конструкций, позволила языку завоевать прочное место среди языков программирования. Современным достижением программирования является признание преимущества структурированных программ. Вот почему Pascal широко используется инженерами и научными работниками, является официальным языком международных олимпиад по информатике.
Автор | |
---|---|
Дата добавления | 31.10.2017 |
Раздел | Информатика |
Подраздел | Другое |
Просмотров | 866 |
Номер материала | MA-071972 |
Оставьте свой комментарий:
Комментарии: