Программирование на языке Паскаль
Последовательное изложение основ программирования на примере алгоритмического языка Паскаль. Обзор структурной и объектно-ориентированной технологии программирования, методов проектирования, отладки и тестирования программ, использования структур данных.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | учебное пособие |
Язык | русский |
Дата добавления | 13.09.2017 |
Размер файла | 1,6 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
ИРКУТСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
ПУТЕЙ СООБЩЕНИЯ
КАФЕДРА “ИНФОРМАТИКА”
ПРОГРАММИРОВАНИЕ НА ЯЗЫКЕ ПАСКАЛЬ
Автор: старший преподаватель Лучников В.А.
Иркутск
2012
Лучников В.А. Программирование на языке ПАСКАЛЬ. Учебное пособие - Иркутск: ИрГУПС, 2012.-311 с.
Учебное пособие предназначено для студентов специальностей “Информационные системы и технологии”, “Программная инженерия” и “Информационная безопасность”. Оно может быть также полезно для студентов других специальностей, изучающих программирование и использующих его в прикладных задачах при выполнении расчетно-графических и курсовых работ по специальным дисциплинам.
Учебное пособие содержит последовательное изложение основ программирования на примере алгоритмического языка Паскаль, необходимую для практической работы справочную информацию. Пособие снабжено большим количеством примеров, иллюстрирующих основные приемы программирования. Рассматривается структурная и объектно-ориентированная технологии программирования, методы проектирования, отладки и тестирования программ, использование основных структур данных для решения конкретных практических задач. В конце каждой темы приводятся часто встречающиеся ошибки программирования, относящиеся к этой теме. Учебное пособие ориентировано на программирование в среде Borland Pascal for Windows.
Данное учебное пособие является первым в серии учебных пособий по программированию на алгоритмических языках высокого уровня, написанных автором. Следующими будут выпущены учебники по программированию на языках C,PHP и Java, необходимых студентам специальностей Информационные системы и Программная инженерия.
программирование паскаль язык проектирование
Содержание
Программирование и алгоритмические языки в историческом аспекте
Введение в Паскаль
Алфавит Паскаля
Служебные (ключевые) слова
Константы
Переменные
Типы данных
Стандартные функции
Выражения
Выражения целого типа
Выражения вещественного типа
Выражения логического типа
Операторы присваивания
Программа и этапы ее разработки. Структура программы
Комментарии
Ввод данных
Вывод данных
Бесформатный способ вывода
форматный способ вывода
Структуры данных
Массивы
Строки
Алгоритм и его свойства
Схемы алгоритмов
Базовые структуры
Цепочка
Ветвления
Альтернатива
Переключатель
Циклы
Бесконечные циклы
Циклы с предусловием
Циклы с постусловием
Циклы с параметром
Множества
Файлы
Типизированные файлы
Текстовые файлы
Записи
Подпрограммы
Подпрограмма-функция
Рекурсия
Процедура
Программные модули
Структура модуля
Компиляция модулей
Взаимное использование модулей
Особенности выполнения инициирующих разделов
Ссылки и динамические переменные
Динамические структуры данных
Связные списки
Сортированные списки
Бинарные деревья
Объектно-ориентированное программирование
Приложения
Программирование и алгоритмические языки в историческом аспекте
Язык, как известно, является, прежде всего средством общения. Он сильно изменяется в зависимости от специфики общающихся лиц, состояния среды, целей общения и так далее. Наш обычный разговорный язык является великолепным средством непосредственного общения людей в нормальных условиях. Достаточно ухудшить условия (например, ввести шум), и язык изменится - он станет более избыточным, усилится роль жестов и мимики, которые образуют тоже язык, эмоционально очень выразительный, хотя и малоинформативный для передачи обычных сообщений.
Если общение происходит письменно (по почте, E-mail), то используется эпистолярный язык, сильно отличающийся от разговорного. Он менее избыточен, более правилен и, может быть, поэтому суховат (трудно, например, воспринимать на слух лекцию, читаемую с листа).
Общение человека и компьютера происходит тоже на языке. К сожалению, компьютеры пока не научились понимать разговорную речь. Одной из причин этого является размытость и многозначность нашего языка - используемые нами в разговоре слова зачастую не могут быть строго определены, смысл их размыт и расплывчат, да и при этом еще и многозначен.
Второй причиной является влияние жизненного опыта, определяющего специфику понимания того или иного слова. Мы, люди, сравнительно хорошо понимаем друг друга не столько потому, что говорим на одном языке, сколько потому, что живем в одном мире. Компьютер не имеет такого опыта, и поэтому в принципе не может хорошо понимать нас, людей.
С компьютером необходимо объясняться на его машинном языке, словами которого являются команды вида “сложить“, “умножить”, “переслать”, “записать”, причем эти команды записываются не словами на знакомом нам языке, а последовательностями нулей и единиц. Чтобы решить на компьютере конкретную задачу, ее нужно представить в виде последовательности таких команд. Каждая команда задает выполнение одной операции, а их совокупность, называемая программой, определяющей работу компьютера. Компьютер понимает только команды, записанные специальным образом в виде последовательности цифр в двоичной или шестнадцатеричной системах счисления. В этой последовательности кодируются операции, которые должен выполнить компьютер, адреса операндов, над которыми производится данная операция, адрес для помещения результата.
Такого рода процесс программирования называется программированием в машинных кодах или на машинном языке.
Система команд любого процессора включает сотни команд и для каждого типа процессора индивидуальна. Значит, в конкретном машинном языке отражена специфика устройства отдельного компьютера, и таких языков существует столько, сколько имеется типов компьютеров. Поэтому программирование на машинном языке требует серьезной специальной подготовки, а сам процесс составления программ является очень кропотливой, утомительной и в то же время механической работой.
Как видно, для того, чтобы общаться с компьютером, нужно либо знать его машинный язык, либо искать переводчика.
Таким переводчиком раньше был программист - человек, специальностью которого было умение писать программы на машинном языке. Образовалась цепочка: пользователь (человек, решающий задачу на компьютере) - программист - машинная программа - компьютер. Эта цепочка много лет тормозила широкое применение компьютеров, и весь процесс программирования сильно напоминал ситуацию, когда немой объясняет слепому, что нужно сделать:
понято изложено понято
пользователем программисту программистом
изготовлено сдано через год
программистом пользователю эксплуатации
что надо было на самом деле
Возникла острая необходимость в создании такого промежуточного языка между человеком и компьютером, который достаточно легко воспринимался бы как человеком, так и машиной. И такие языки были созданы, их назвали алгоритмическим языками. Число этих языков давно перевалило за сотню. С чем связано многообразие этих языков? Здесь проявился эффект, замеченный еще М.В.Ломоносовым: по разным поводам лучше всего использовать разные языки - с врагом лучше всего объясняться на немецком, с Богом - на испанском, с женщиной - на итальянском и т.д. Конечно, и с женщиной можно успешно объясняться на немецком. Но на итальянском - лучше. В нем есть необходимые для этого средства, которых нет в других языках. Получается, что хотя все национальные языки универсальны, употреблять их лучше, ориентируясь на проблемную ситуацию. И только один великий и могучий пригоден для всего - объясниться с врагом, побеседовать с другом, поговорить с женщиной, пообщаться с Богом.
Точно так происходило и с алгоритмическими языками при их создании. Строго говоря, можно было бы обойтись одним универсальным языком, и попытки создания такого языка предпринимались. Его универсальность гарантировала бы возможность написания любых программ. Но, как всякое универсальное средство, этот язык не был бы удобен для решения конкретных задач. Всякая задача обладает своей спецификой, которую нужно учесть в языке программирования при решении задач по одной тематике или проблеме. Такой язык будет очень удобен именно для той проблемы, на которую он ориентирован. Другие же проблемы он в принципе может обслуживать, но, естественно, хуже. Так появились проблемно-ориентированные языки.
Для того, чтобы компьютер понимал эти языки, необходим переводчик с этих языков на машинный язык компьютера. Таким переводчиком является транслятор - специальная программа, переводящая программу, написанную на алгоритмическом языке, на машинный код. Образовалась более удобная для пользователя цепочка: пользователь - программа на алгоритмическом языке - транслятор - машинная программа - компьютер. Эта цепочка буквально совершила революцию в применении компьютеров, а, следовательно, и в их развитии.
В настоящее время наиболее распространенными алгоритмическими языками являются Паскаль, Бейсик, C, C++, Java, JavaScript, PHP. Первым из них был Фортран.
Фортран (FORTRAN, FORmula TRANslator - переводчик формул) - язык программирования для решения научных и инженерных задач. Он отличается хорошим качеством получаемых программ, развитыми средствами ввода и вывода информации, имеет обширную библиотеку стандартных программ. Язык был разработан в 1954-1956 годах группой специалистов фирмы IBM (США) под руководством профессора Дж.В.Бэкуса для машины IBM 704. В первом документе, посвященном этому языку, было сказано: “Система трансляции математических формул, сокращенно Фортран, будет состоять из большого количества программ, позволяющих IBM 704 воспринимать сжатую формулировку задачи в терминах математических обозначений и составлять автоматически высокоэффективную программу для решения задачи”.
В июне 1956 года появилось сообщение о создании новой версии языка со значительными добавлениями. Эта версия была названа Фортран-II и содержала понятие подпрограмм и оператора связи между программными единицами. В 1962 году был выпущен предварительный бюллетень с описанием версии, которая сейчас называется Фортран-IV и является наиболее употребляемой. В ней добавились понятия типов величин и некоторые операторы. К этому времени (май 1962 года) относится и начало деятельности комиссии при Американской Ассоциации Стандартов (ASA). Комиссия создала два стандарта, официально известные как Фортран и Базисный Фортран. Эти языки приблизительно соответствуют Фортрану-II и Фортрану-IV, однако с тем существенным отличием, что Базисный Фортран является подмножеством Фортрана. Язык Фортран до сих пор продолжает развиваться и совершенствоваться (Фортран-77), оказывая влияние на создание и развитие других языков программирования.
Алгол (ALGOL, ALGOrithmic Language - язык алгоритмов) - алгоритмический язык, ориентированный на решение задач вычислительной математики. Он характеризуется практически полной независимостью от машины, строго формальным описанием синтаксиса, блочной структурой программ, позволяющей разделить работу по составлению больших программ на независимые части.
Первое описание Алгола было дано профессором Дж.В.Бэкусом в 1959 году. Оно было пересмотрено и исправлено профессором П.Науром в 1960 году и легло в основу языка, действующего до сих пор. Группа математиков, членов IFIP (Международная федерация по обработке информации), углубила и обобщила основные понятия в области информации и в 1966 году опубликовала документ с изложением основ нового универсального алгоритмического языка, получившего название Алгол-68. В этом языке число основных понятий сведено к разумному минимуму с целью добиться высокой изобразительной силы языка, обеспечив свободу сочетания и взаимодействия этих понятий между собой.
Алгол создавался после разработки и практического применения Фортрана, поэтому характеризуется как введением новых понятий и конструкций, так и обобщением понятий, имевшихся в Фортране. Однако по своим качествам Алголу не удалось превзойти Фортран, но он повсеместно признан как весьма удобное средство для публикаций алгоритмов и для обучения основам программирования.
Кобол (COBOL, Common Business Oriented Language - общепринятый деловой язык) - язык программирования для задач обработки данных, близкий к языку, на котором формулируются и решаются главным образом задачи экономического характера. Он предусматривает однотипную обработку больших по объему совокупностей данных в виде таблиц, составление различных документов и отчетов в заданной форме. Язык создан сотрудниками фирмы IBM в 1959 году и широко используется до сих пор в банковской сфере.
Лисп (LISP, LIST Processing - обработка списков) - разработан в конце 50-х годов Д.Маккарти. Является самым популярным языком для работ по искусственному интеллекту. Программы и данные в нем представлены в виде списков.
АПЛ (APL, A Programming Language - язык программирования) - разработан в 1961 году сотрудником IBM К.Айверсоном. Он представляет собой только способ записи для описания задач прикладной математики и отличается простотой работы как с отдельными величинами, так и с массивами чисел.
Бейсик (Basic - многоцелевой язык символических инструкций для начинающих) - разработан в 1965 году сотрудниками Дартмутского колледжа Д.Кемени и Т.Курцем. Название basic (базовый) несет определенную смысловую нагрузку - язык обладает набором основных, базовых средств, необходимых для составления программ. Изначально он предназначался для вводного курса по информатике, хотя и не являлся структурированным. Он ориентируется на составление интерактивных программ, при реализации которых возможен диалог человека с компьютером. Сейчас это один из самых популярных языков для работы на персональных компьютерах. Он продолжает развиваться, впитывая в себя лучшие черты новейших алгоритмических языков и приспосабливаясь к современным компьютерам.
ПЛ/1 (PL/1, Programming Language One - язык программирования один) - был разработан в 1963-1966 годах сотрудниками фирмы IBM. Это многоцелевой универсальный язык программирования, в котором собраны средства для решения различных задач - научно-технических, информационных, экономических, задач управления и системного программирования. В нем объединены фундаментальные понятия алгоритмических языков Фортран, Алгол, Кобол. Для каждого конкретного класса задач выделяется подмножество языка ПЛ/1 путем исключения ненужных элементов.
Паскаль (Pascal) - создан в 1968 году профессором Высшей технической школы в Цюрихе Никлаусом Виртом. Язык содержит небольшое число основных понятий, удобен для обучения программированию и решения практических задач.
Ада (Ada) - универсальный алгоритмический язык для задач вычислительного характера, системного программирования, систем реального времени и параллельной обработки. Язык назван именем Ады Августы леди Лавлейс, дочери великого поэта Джорджа Байрона и сотрудницы Чарльза Беббиджа. Всего 50 страниц математической прозы, опубликованной в виде малозаметных “Приложений переводчика” к книге Л.Ф.Менабреа “Очерк аналитической машины, изобретенной Чарльзом Беббиджем”, прославили ее имя. В “Приложениях” она разработала первый язык общения с компьютером и, таким образом, стала первой программисткой. Терминология, которую ввела леди Ада, используется и современными программистами: рабочие ячейки, цикл и другие.
Язык Ада разработан в Париже группой авторов под руководством Жана Ушбиа. Он был создан по инициативе Министерства обороны США для компьютеров армии, флота и ВВС страны. Работа по созданию языка началась в 1975 году, руководство по нему опубликовано в 1979 году, а окончательная его версия, появившаяся в 1980 году, стала стандартом Министерства обороны США.
Введение в Паскаль
Язык программирования Паскаль, названный в честь французского философа и математика Блеза Паскаля, был создан в начале 70-х годов швейцарским ученым Никлаусом Виртом, во-первых, с целью внедрения системного подхода к программированию, созданию прозрачных программ и применению методов автоматической проверки их целостности и, во-вторых, как средство обучения новой компьютерной культуры. Он получился строгим, логичным, достаточно легким для понимания и овладения им и сразу завоевал сердца программистов. Будучи педагогом, Н.Вирт сознательно попытался поднять саму дисциплину “программирование” от уровня простого ремесла до ранга сложной инженерной деятельности. Широкое распространение язык получил благодаря усилиям французского математика Филиппа Кана, разработавшего в 1983 году компактный, быстродействующий и дешевый компилятор, который он назвал Турбо Паскаль. В начале 80-х годов он создал фирму по разработке программного обеспечения Borland International, занимавшуюся первоначально распространением Турбо Паскаля для микрокомпьютеров. В конце 80-х годов появилась уже его шестая версия, обеспечивавшая многооконный и многофайловый режимы работы, использование мыши, применение объектно-ориентированного программирования. Она обладала встроенным ассемблером и имела другие возможности. В 1992 году фирма выпустила две системы программирования на основе языка Паскаль: Turbo Pascal 7.0 и Borland Pascal 7.0
Они различаются некоторыми опциями (режимами работы) и библиотеками подпрограмм.
Основными особенностями языка Паскаль являются следующие:
это в широком смысле универсальный язык, предназначенный как для решения традиционных задач программирования (обработка числовой и символьной информации), так и для создания, например, баз данных,
Паскаль позволяет создавать большие программы, разрабатываемые коллективами программистов,
он реализует возможность декомпозиции задач на независимые подзадачи и позволяет поддерживать надежный интерфейс между ними, то есть компоновать программу из отдельных независимых компонентов. Такой подход значительно ускоряет процесс создания больших программных комплексов, повышает уровень взаимозаменяемости программных фрагментов, упрощает корректировки и повышает надежность работы программных комплексов,
он обеспечивает возможность гибкой структуризации данных за счет использования массивов, записей, множеств, файлов, динамических структур,
язык обеспечивает механизм надежной передачи параметров в подпрограммы и их рекурсивность,
он требует соблюдения строгой дисциплины использования типов данных,
в Паскале имеется возможность создания новых типов данных в широком диапазоне - от создания синонимов для уже существующих типов данных до определения внутреннего представления объектов нового типа данных и набора операций для объектов этого типа,
в Паскале существует иерархия выполнения операций.
Алфавит Паскаля
Любой язык имеет свой алфавит - набор символов для написания слов.
Алфавит Паскаля - это набор символов, используемых для написания программ.
Алфавит состоит из:
букв
цифр
специальных знаков.
К категории букв относятся 26 букв латинского алфавита:
a b c d e f g h i j k l m n o p q r s t u v w x y z
Паскаль не различает строчные и прописные буквы. К категории букв относится и символ подчеркивания.
Для написания комментариев и вывода текста может быть использована кириллица.
Ко второй категории - цифрам - относятся десять арабских цифр:
2 3 4 5 6 7 8 9 0
Третьей категорией - специальными знаками - являются следующие символы, расположенные на клавиатуре:
+ плюс ^ карат
- минус пробел (не имеет обозначения)
* звездочка # знак номера
/ дробная черта @ эт
< меньше & амперсанд
> больше $ знак доллара
= равно ` апостроф
. точка
, запятая
; точка с запятой
: двоеточие
() круглые скобки
[] квадратные скобки
{} фигурные скобки
Служебные (ключевые) слова
Программа на Паскале состоит из последовательности операторов - команд, определяющих действия компьютера.
Все операторы Паскаля, кроме оператора присваивания, начинаются со служебного слова, которое дает команду компьютеру на выполнение определенного действия: ввести, вывести, закрыть и т.д.
В качестве служебных слов используются слова английского языка, отражающие смысл выполняемого действия:
And и Record запись
Array массив Repeat повторять
Begin начало Set набор
Case вариант String строка
Const константа Then то (тогда)
Div деление нацело Text текст
Do выполнять To к
DownTo уменьшая до Type тип
Else иначе Uses использует
End конец Until до
File файл Var переменная
For для While пока
Function функция With с
If если
In в
Label метка
Mod модуль
Nil пустой адрес
Not не
Of из
Or или
Procedure процедура
Program программа
Кроме служебных слов, в Паскале имеются стандартные имена, используемые при записи:
стандартных типов данных:
Integer целый
Real вещественный
Boolean логический
Char символьный
стандартных констант:
True истина
False ложь
MaxInt наибольшее целое
Pi число р = 3,14159265358979
стандартных процедур:
Read читать
ReadLn читать строку
ReSet восстановить
ReWrite переписать
Write писать
WriteLn писать строку
Константы
Знакомые по школьному курсу константы - это числа: ускорение свободного падения, число р и т.д.
В Паскале это не только числа, но и символы.
Константы представляют собой величины, которые не изменяются в процессе выполнения программы, то есть их значения фиксированы.
Внимание! Речь идет не о поименованных или типизированных константах.
О них разговор пойдет дальше.
В Паскале используются константы пяти стандартных типов:
целые - целые числа
Тип |
Диапазон |
Формат |
|
ShortInt - короткое целое |
-128 … 127 |
1 байт со знаком |
|
Integer - целое |
-32768 …+32767 |
2 байта со знаком |
|
LongInt - длинное целое |
-2 147 483 648 … 2 147 483 647 |
4 байта со знаком |
|
Byte - длиной в байт |
0 … 255 |
1 байт без знака |
|
Word - длиной в слово |
0 … 65535 |
2 байта без знака |
вещественные - числа с дробной частью
Тип |
Диапазон |
Точность |
Формат |
|
Real - вещественный |
± 2,9 Ч 10-39 …±1,7 Ч 1038 |
11 - 12 знаков |
6 байт |
|
Single - с одинарной точностью |
± 1,5 Ч 10-45 …±3,4 Ч 1038 |
7 - 8 знаков |
4 байта |
|
Double - с двойной точностью |
± 5,0 Ч 10-324 …±1,7 Ч 10308 |
15 - 16 знаков |
8 байт |
|
Extended - повышенной точности |
± 1,9 Ч 10-4951 …±1,1 Ч 104932 |
19 - 20 знаков |
10 байт |
|
Comp - сложный |
-2 Ч 1063 +1…2 Ч 1063 -1 |
19 - 20 знаков |
8 байт |
логические - Boolean - константы, имеющие только два значения
True - истина
False - ложь
символьные - Char - все символы алфавита Паскаля, заключенные в апострофы:`a' `b' `c' `0' `9' `#' `_'
текстовые - String - набор символов, заключенный в апострофы:
`hello' - не длиннее 255 символов.
Запись чисел
1. Целые константы (целые числа) записываются как обычно:
5 -2 0
2. Вещественные константы могут быть записаны в двух формах:
форме с фиксированной запятой - в виде десятичной дроби, только вместо десятичной запятой ставится точка. Число не должно начинаться или заканчиваться десятичной точкой. В памяти компьютера сохраняются 11-12 цифр дробной части:
3.1415926535898 -2.13 5.0 0.5
Ошибки: 5. .1 - отсутствуют дробная или целая части
форме с плавающей запятой - в виде мантиссы с последующим десятичным порядком (экспоненциальная форма записи):
-2.3e-12 0.41E+5 -6.23e15
Показатель степени записывается после буквы е (Е), причем знак плюс не обязателен.
Внимание! В записи числа пробелы и знаки умножения недопустимы!
Переменные
В математике с понятием переменной связывают некоторый поименованный объект, который может принимать одно значение из допустимого множества значений.
В программировании термин переменная означает ячейку оперативной памяти, в которой находится текущее значение какого-то объекта программы. Имя переменной рассматривается как наименование или адрес такой ячейки памяти. Знание этого адреса дает возможность программисту изменять значение переменной в процессе выполнения программы.
Константам тоже выделяются необходимые ячейки памяти, однако их адреса программисту недоступны, поэтому значения констант нельзя изменить в процессе выполнения программы.
Таким образом, понятие переменной употребляется для обозначения поименованной величины, которая может принимать одно из допустимого диапазона значений. Обращение к переменной осуществляется по ее имени, которое программист выбирает сам, руководствуясь следующими правилами:
имя переменной должно отражать ее назначение, то есть оно должно нести определенный смысл,
имя может состоять из букв латинского алфавита, цифр и знаков подчеркивания,
имя должно начинаться с буквы или знака подчеркивания,
не допускается совпадение имени со служебными словами, именем программы, именами подпрограмм или функций.
Как и константы, переменные могут быть пяти стандартных типов: целые, вещественные, символьные, логические и строковые. Тип переменной определяет диапазон ее изменения.
Кроме стандартных типов, программист может использовать интервальные и перечисляемые типы.
Таким образом, любая переменная характеризуется уникальным именем, типом и конкретным значением из диапазона, определяемого ее типом.
Типы данных
Именование констант и переменных в программировании очень похоже на использование символических выражений в алгебре, однако для того, чтобы компилятор смог их обрабатывать, нужно снабдить его некоторой дополнительной информацией - выполнить описание. В этой информации сообщается о типе каждой именованной величины.
Идея типов берет свое начало в математике и логике и призвана предотвращать двусмысленные и ошибочные конструкции языка программирования.
Человек, решающий какую-либо задачу вручную, обладает интуитивной способностью быстро разобраться в типах данных и тех операциях, которые для каждого типа справедливы. Например, нельзя извлечь квадратный корень из слова или написать число с заглавной буквы. Одна из причин, позволяющих легко провести такое распознавание, состоит в том, что слова, числа, даты, время и другие данные для человека выглядят по-разному. Однако для компьютера все типы данных сводятся, в конечном счете, к последовательности битов, образующих байты - содержимому ячеек памяти. Поэтому в программах различие в типах следует делать явным.
Паскаль, как и другие языки программирования высокого уровня, позволяет отвлечься от представления данных в виде последовательности бит - двоичных разрядов, наилучшего с точки зрения компьютера. При написании программы программист может использовать понятия, соответствующие терминам решаемой задачи: целое и вещественное число, массив, запись, файл, множество. Это существенно упрощает решение. Естественно, что, в конце концов они отображаются на конкретное битовое представление.
Таким образом, тип определяет множество значений, которые могут принимать объекты программы (константы, переменные), а также совокупность операций, допустимых над этими значениями.
Как уже было сказано, в Паскале имеется пять стандартных:
целый,
вещественный,
символьный,
логический
строковый
и два нестандартных:
интервальный
перечисляемый
типов данных.
Введение концепции типов данных в Паскале привело к следующему:
каждая единица языка программирования (константа, переменная, выражение, функция) имеет только один тип. Тип определяет множество значений, которое может принимать это данное,
явное введение типов позволяет четко установить тип каждой программной единицы перед выполнением самой программы,
между каждым типом и некоторым ограниченным подмножеством операций существует однозначная связь, то есть для каждого типа определен свой ограниченный набор операций,
использование типов вносит избыточность в сам язык, но это существенно помогает при обнаружении ошибок в структуре алгоритма, реализованного в программе.
Стандартные функции
Стандартные функции служат для вычисления значений некоторых математических функций.
При обращении к ним необходимо записать имя функции и в скобках указать аргумент - константу, переменную или выражение. Имена стандартных функций соответствуют общепринятым:
Abs(x) |x| Abs(-2.5) = 2.5
Sqr(x) x2 Sqr(25) = 625
Sqrt(x) Sqrt(225) = 15
Exp(x) ex Exp(0.0) = 1.0
Ln(x) ln x Ln(1.0) = 0.0
Sin(x) sin x Sin(0.0) = 0.0
Cos(x) cos x Cos(0.0) = 1.0
Arctan(x) arctg x Arctan(0.0) = 0.0
Trunc(x) целая часть аргумента Trunc(2.7) = 2
Round(x) округление аргумента Round(2.7) = 3
Frac(x) дробная часть аргумента Frac(2.7) = 0.7
Int(x) целая часть аргумента Int(2.7) = 2.0
Pred(x) предыдущее значение Pred(5) = 4
аргумента Pred(-5) = -6
Pred(`c') = `b'
Succ(x) следующее значение Succ(5) = 6
аргумента Succ(-5) = -4
Succ(`c') = `d'
Ord(c) порядковый номер символа Ord(`A') = 65
(код символа) Ord(`B') = 66
Ord(`0') = 48
Ord(`1') = 49
но Ord(1) = 1
Chr(x) символ по его номеру Chr(65) = `A'
(коду) Chr(48) = `0'
Odd(x) определение нечетности Odd(7) = True
целочисленного аргумента Odd(8) = False
Правила использования стандартных функций:
аргументы тригонометрических функций должны задаваться в радианах
аргументы функций Pred(), Succ() - только целые числа или символы алфавита Паскаля
аргументы функции Ord() - только символы алфавита Паскаля
аргументы функции Chr() - только целые числа в диапазоне от 32 до 255
аргументы функции Odd() - только целые числа.
Выражения
Программа на алгоритмических языках представляет собой последовательность операторов, записанных в соответствии с принятыми правилами.
Оператор - это конструкция, определяющая представление информации в компьютере и служащая указанием ему для выполнения определенных действий.
Важнейшей составляющей частью любой программы являются операторы присваивания, приписывающие переменным определенные значения. Действия и последовательность вычислений в операторах присваивания определяются выражениями.
Под выражением понимается последовательность констант, переменных и функций, называемых операндами, связанных круглыми скобками и знаками математических операций. В зависимости от типа операндов, используемых в выражениях, различают выражения целого, вещественного и логического типов.
Выражения целого типа
В этих выражениях используются операнды только целого типа, связанные круглыми скобками и знаками операций:
+ сложение x + y 5 + 3 = 8
- вычитание x - y 5 - 3 = 2
* умножение x * y 5 * 3 = 15
/ деление x / y 5 / 3 = 1
Div деление нацело x Div y 5 Div 3 = 1
10 Div 3 = 3
10 Div (-3) = -3
3 Div 5 = 0
125 Div 10 = 12
Mod остаток от деления x Mod y 5 Mod 3 = 2
10 Mod 3 = 1
10 Mod (-3) = 1
3 Mod 5 = 3
125 Mod 10 = 5
Как видно, для целочисленных операндов операции Div и / эквивалентны: их результат - целая часть частного без округления.
В Паскале нет отдельной операции возведения в степень, поэтому для ее реализации используется соотношение:
xa = ea ln x
Для изменения значения аргумента можно использовать процедуры инкремента и декремента:
Inc(x) увеличение аргумента на 1
Inc(x, n) увеличение аргумента на n
Dec(x) уменьшение аргумента на 1
Dec(x, n) уменьшение аргумента на n
Порядок вычисления выражений целого типа:
вычисление значений функций
выполнение операций типа умножения: * / Div Mod
выполнение операций типа сложения: + -
Порядок вычислений может быть изменен с помощью круглых скобок.
Правила записи выражений целого типа:
нельзя пропускать (подразумевать) знаки операций; особенно это относится к знаку умножения *
нельзя ставить рядом два знака операций
операции Mod и Div необходимо выделять пробелами:
неправильно правильно
3y 3*y
(a + b)(c - d) (a + b) * (c - d)
r - s * -5 r - s * (-5)
Примеры записи выражений целого типа:
математическая запись на Паскале
2a + 3b 2 * a + 3 * b
b2 Sqrt(a) * b * b
5x3 5 * x * x * x
+ a * b / c + c / (a * b)
x-1 1 / x
log2 x ln(x) / ln(2)
x100 Exp(100 * Ln(x))
Exp(Ln(1 + x) / 3)
Выражения вещественного типа
В этих выражениях используются операнды как целого, так и вещественного типов, связанные круглыми скобками и знаками операций:
+ сложение x + y 5.2 + 3.1 = 8.3
- вычитание x - y 5.2 - 3.1 = 2.1
* умножение x * y 5.2 * 3.1 = 16.12
/ деление x / y 5.0 / 2.0 = 2.5
При записи выражений вещественного типа желательно все целочисленные константы (целые числа), входящие в выражение, представить в виде вещественных, то есть записывать не 2 , а 2.0, не -12, а -12.0 .
Порядок вычисления этих выражений и правила их построения не отличаются от порядка вычисления и правил построения выражений целого типа.
Примеры записи выражений вещественного типа:
математическая запись на Паскале
2,5a + 0,973b2 2.5 * a + 0.973 * b * b
3,61·109 x - 526,237 3.61e9 * x - 526.237 * Sqrt(0.2*y)
Выражения логического типа
Это самый сложный тип выражений в Паскале, в котором используются операнды всех типов, связанные круглыми скобками и знаками арифметических, логических операций и операций сравнения.
Каждые из этих типов операций могут связывать операнды только определенных типов:
арифметические операции:+, -, *, /, Div и Mod
могут связывать операнды целого типа, имея результатом целое число,
арифметические операции:+, -, *, /
могут связывать операнды вещественного типа, имея результатом действительное число,
операции сравнения:
> больше
< меньше
>= больше или равно
<= меньше или равно
= равно
<> не равно
могут связывать только однотипные операнды, имея результатом логическую константу True, если операция выполняется, или False, если не выполняется:
2 > 1 = True
`A' > `F' = False - символы сравниваются по своим порядковым номерам:
Ord(`A') = 65
Ord(`F') = 70
логические операции:
Not НЕ (отрицание)
And И (конъюнкция)
Or ИЛИ (дизъюнкция)
могут связывать только операнды логического типа, имея результатом логическую константу True, если операция выполняется, или False, если не выполняется, при этом операнды обязательно должны стоять в скобках, а логические операции - в пробелах:
Not(5 < 2) = True
(True) And (False) = False
(True) Or (False) = True
(3 > 2) Or (`A' > `C') = True
(3 > 2) And (`A' > `C') = False
Таким образом, выражения логического типа могут принимать только два значения: True - истина или False - ложь.
Приоритет выполнения операций в логических выражениях:
операция отрицания Not
операции типа умножения *, /, Div, Mod, And
операции типа сложения +, -, Or
операции сравнения >, >=, <, <=, =, <>
Примеры записи логических выражений:
обычная запись запись на Паскале
(c <= d + 2.5) Or Not(a + b > 10.2)
(a <= 0.5) And ((a+ c)<> p*q)
(x >=(a - 0.1)) And (x < (a + 0.5))
Внимание! Последнее выражение записывается с помощью операции конъюнкция.
Неверная запись: (a - 0.1) <= x < (a + 0.5)
побитовые операции:
And И (конъюнкция)
Or ИЛИ (дизъюнкция)
могут связывать только операнды целого типа, имея результатом целое число.
При этом операции выполняются над отдельными разрядами двоичного представления операндов: если значение разряда равно единице, то она воспринимается как истина, если нулю - как ложь. Результат представляется десятичным числом:
5 AND 3 = 1 101 = 5
AND
011 = 3
001 = 1
5 OR 3 = 7 101 = 5
OR
011 = 3
111 = 7
Операторы присваивания
Операторы присваивания служат для вычисления значений выражений и приписывания вычисленных значений переменным.
Общий вид оператора присваивания:
x := s;
где x - имя переменной,
s - выражение (переменная, константа) того же типа,
:= - знак присваивания.
Оператор присваивания дает команду компьютеру на:
вычисление значения выражения справа от знака присваивания,
запись вычисленного значения в ячейку памяти, отведенную для хранения переменной, стоящей слева от знака присваивания; при этом прежнее значение переменной, записанной в этой ячейке, стирается:
a:= 3 Mod 2;
a := a + 1;
После выполнения этих операторов переменная a примет значение 2.
Пример: с помощью последовательности операторов присваивания обменять значениями две переменные a и b:
Неправильное решение:
a := b;
b := a;
В этом случае обмена не произойдет, и обе переменные примут одно и то же значение, в данном случае - значение переменной b.
Для обмена значениями двух переменных обязательно нужна третья. Такой обмен осуществляется с помощью алгоритма циклического обмена:
c := a;
a := b;
b := c;
Неправильная запись операторов присваивания:
10 := x; слева должно стоять имя
a + b := y; переменной, а справа - выражение
i := j := k := 1; нельзя присваивать одним оператором одновременно значение сразу нескольким переменным
Пример: чему будет равно значение переменной s после выполнения следующих операторов присваивания:
x := 534;
s := 0;
s := s + x Mod 10; s =0 + 4
s := s + x Div 10 Mod 10; s = 4 + 3
s := s + x Div 10 Div 10 Mod 10; s = 7 + 5
Эта программа вычисляет сумму цифр переменной x, то есть s = 12.
Программа и этапы ее разработки. Структура программы
Команды, выполняемые процессором компьютера, являются электрическими сигналами, которые можно представить в виде последовательностей нулей и единиц. Каждой команде соответствует своя последовательность - двоичное число или машинный код. Написать программу на нем может только очень опытный программист, хорошо знающий архитектуру процессора (его устройство) и систему команд (набор допустимых инструкций). Поэтому большинство программ создаются при помощи посредников, в качестве которых выступают алгоритмические языки или языки программирования.
Совокупность средств и правил представления алгоритма в виде, пригодном для выполнения компьютером, называется языком программирования.
Программа - это запись алгоритма на языке программирования.
В процессе создания любой программы можно выделить несколько этапов.
1. Постановка задачи - выполняется специалистом в предметной области на естественном языке (русском, английском, языком рисунков или жестов…). При этом определяются цели задачи, ее содержание и общий подход к решению. Возможно, что задача решается точно (аналитически), и без компьютера можно обойтись. Уже на этапе постановки задачи надо учитывать эффективность выбранного алгоритма решения, ограничения, накладываемые аппаратным и программным обеспечением компьютера.
2. Анализ задачи и моделирование - определяются исходные данные и результат решения задачи, выявляются ограничения на их значения, выполняется формализованное описание задачи и построение математической модели, пригодной для решения на компьютере.
3. Разработка или выбор алгоритма решения задачи - выполняется на основе ее математического описания. Многие задачи можно решить различными способами. Программист должен выбрать оптимальное решение. Неточности в постановке, анализе задачи или разработке алгоритма могут привести к скрытой ошибке - программист получает неверный результат, считая его правильным.
4. Проектирование общей структуры программы - формируется модель решения с последующей детализацией и разбивкой на подпрограммы, определяется архитектура программы, способ хранения информации, структуры данных, наиболее подходящие для реализации выбранного алгоритма.
5. Кодирование - запись алгоритма на языке программирования. Современные системы программирования (Delphi) позволяют ускорить процесс разработки программы, автоматически создавая часть ее текста, однако вся творческая работа по-прежнему лежит на программисте. Для успешной реализации целей проекта программисту необходимо использовать современные технологии и методы программирования: структурное, модульное и объектно-ориентированное программирование.
6. Отладка и тестирование программы. Под отладкой понимается устранение ошибок в программе, не выявленных в процессе компиляции. Тестирование позволяет вести их поиск и, в конечном счете, убедиться в том, что полностью отлаженная программа дает правильный результат. Для этого разрабатывается система тестов - специально подобранных контрольных примеров с такими наборами параметров, для которых решение задачи известно. Тестирование должно охватывать все возможные ветвления в программе, то есть проверять все ее инструкции, и включать такие исходные данные, для которых решение невозможно. Проверка особых, исключительных ситуаций, необходима для анализа корректности. В ответственных проектах большое внимание уделяется так называемой защите от дурака (fool-tolerance), подразумевающей устойчивость программы к неумелому обращению пользователем. Использование специальных программ-отладчиков, которые позволяют выполнять программу по отдельным шагам, просматривая при этом промежуточные результаты, значительно упрощает этот этап.
7. Анализ результатов - если программа выполняет моделирование какого-либо известного процесса, следует сопоставить результаты вычислений с результатами наблюдений. В случае существенного расхождения необходимо изменить модель.
8. Сопровождение программы - включает консультацию по работе с программой и обучение персонала. Устраняются недостатки и ошибки, замеченные в процессе эксплуатации.
Таким образом, программа реализует алгоритм решения задачи. Основными характеристиками программы являются следующие:
точность полученного результата,
время выполнения,
объем требуемой памяти.
Функционирование программы связано с обработкой данных. Данные, предназначенные для обработки, называются исходными и задаются обычно в начале выполнения программы. Программа по ходу выполнения может запрашивать недостающие исходные данные. Основной способ их задания - ввод с клавиатуры. Программа может также считывать исходные данные из файлов.
В процессе выполнения программы исходные данные преобразуются в результаты. Результаты выводятся на экран или принтер в текстовом или графическом виде, а также могут быть записаны в файл на диске.
Таким образом, в программе выполняются следующие действия:
ввод данных,
определение представления этих данных в памяти компьютера (создание структур данных),
определение операций по обработке структур данных в соответствии с заданным алгоритмом - создание базовых структур,
вывод результатов работы.
Типовой алгоритм вычислительного процесса, реализованного в программе, имеет вид:
Программа на Паскале имеет четко выраженную структуру - последовательность разделов, нарушать которую нежелательно.
Любая программа состоит из заголовка и разделов.
Заголовок записывается как первая строка программы и начинается со слова Program, за которым следует имя программы:
Program Summa;
Program Primer_1;
Выбор заголовка программы подчиняется правилам выбора имени переменной. Заголовок заканчивается точкой с запятой.
За заголовком следуют разделы программы:
Uses раздел используемых модулей
В нем указываются имена стандартных и пользовательских модулей, используемых программой:
Uses CRT, Graph;
Label раздел описания меток
В нем перечисляются метки, используемые в программе. Любой оператор программы можно выделить, поставив перед ним метку - целое число без знака от 0 до 9999 или идентификатор. Метками снабжаются операторы программы, на которые осуществляется переход операторами GoTo, и отделяются от помеченного оператора двоеточием:10: f := f + 1;
Метки, объявленные в этом разделе, обязательно должны использоваться в программе. С другой стороны, все имеющиеся в программе метки должны быть обязательно описаны в этом разделе. Метки не должны повторяться. Раздел заканчивается точкой с запятой:Label 20, 5, metka;
Если в программе нет помеченных операторов, то раздел описания меток опускается,
Const раздел определения поименованных и типизированных констант
в нем задаются константы, используемые в программе, значения которых нужно будет менять в разных вариантах программы. Например, если в программе часто используется константа 2,71, то ее лучше задать в этом разделе:Const eps = 2.71;
Тип константы определяется типом ее значения. Как правило, в этом разделе определяются размеры массивов, которые далее описываются в разделах Type или Var:
Const row = 2;
col = 3;
Значения констант, описанных в этом разделе, в программе изменять нельзя. Такие константы называются поименованными. В этом же разделе могут быть заданы типизированные константы, значения которых можно далее изменять, например, массивы:
Const mass: Array [1..row,1..col] Of Integer =((5,-2,0),(12,1,-20));
Заданы элементы массива mass, состоящего из двух строк и трех столбцов. Использование констант делает программу наглядной и удобной для отладки и внесения изменений.
Type раздел определения типов
Этот раздел появляется в программе в том случае, если в ней используются данные нестандартных типов, то есть типов, определяемых самим программистом. Помимо стандартных типов, в Паскале можно использовать еще два типа данных - интервальный (тип-диапазон) и перечисляемый.
Если мы хотим объяснить кому-нибудь новое для него понятие, то в простейшем случае перечисляем реальные объекты, охватываемые этим понятием. Например, как пояснить, что такое время года? Это, говорим мы, весна, лето, осень и зима. А сторона света? Это север, юг, восток и запад. В Паскале такие понятия можно выразить через перечисляемый тип данных:
Type TStorona = (sever, yug, vostok, zapad);
Конкретные значения типа перечисляются в скобках через запятую. Переменные заданного типа описываются далее в разделе Var. По принятому соглашению, имена новых типов начинаются с буквы T.
Таким образом, перечисляемый тип представляет собой упорядоченное множество значений, образуемое перечислением имен, входящих в этот тип. В программе с этими значениями можно оперировать, как с обычными константами, однако к ним нельзя применять арифметические и логические операции, но можно применять операции сравнения (значения считаются упорядоченными по возрастанию в порядке их перечисления), определять их порядковые номера функцией Ord, предшествующее и последующее значения функциями Pred и Succ:
yug > sever = True
Ord(sever) = 0 нумерация значений начинается с нуля!
Ord(zapad) = 3
Pred(vostok) = yug
Succ(vostok) = zapad
Если в программе определены несколько перечисляемых типов, то необходимо следить за тем, чтобы одно и то же значение не входило в два типа одновременно.
Как правило, перечисляемый тип используется для описания множества значений какого-нибудь свойства объекта, например, его цвета. Поэтому он повышает понятность, читабельность программы.
Перечисляемый тип относится к упорядоченным типам данных, то есть к типам, у которых для каждого принадлежащего к нему значения (кроме первого) известно предыдущее значение и вместе с тем для каждого (кроме последнего) - последующее значение. Кроме перечисляемого, к упорядоченным типам относятся целый, логический и символьный типы данных.
В ряду значений любого упорядоченного типа можно выделить более узкий диапазон или интервал:
2 .. 5
-10 .. 20
`a' ..'d'
yug .. zapad
Эти значения образуют интервальный тип данных - тип, формируемый несколькими подряд идущими значениями одного упорядоченного типа. Границы значений интервального типа определяются наименьшей и наибольшей константами, ограничивающими выделенный интервал:
Type TIndex = 1..10;
TYear = 1970..2000;
TDay = 1..31;
TLitera = `a'..'z';
Внимание! Между границами диапазона (интервала) ставятся две точки.
Описаны пять интервальных типов. Переменные, относящиеся к этим типам, могут принимать любые значения в заданных диапазонах:
для TIndex - от 1 до 10
для TYear - от 1970 до 2000
для TDay - от 1 до 31
для TLitera - от `a' до `z'
После определения интервального типа объявляются переменные этого типа в разделе Var, причем в программе эти переменные могут принимать только значения, лежащие в заданном диапазоне.
Внимание! Нельзя определять интервальный тип для вещественных данных.
Если переменной интервального типа данных присваивается значение, не соответствующее диапазону данного типа, то программа прерывается, и выдается ошибка:
Error 201: Range check error - ошибка проверки диапазона возможных значений.
Данное свойство интервального типа используется для ограничения возможных значений переменной, так как в некоторых случаях удобнее прекратить программу с ошибкой, чем продолжать ее выполнение с некорректным значением переменной.
Переменные упорядоченных типов можно использовать так, как и в других алгоритмических языках употребляются только целые числа: в качестве параметра цикла, индекса элемента массива, селектора в операторе выбора Case,
Var раздел описания переменных
В этом разделе перечисляются имена используемых в программе переменных с указанием их типов:
Var i, j : Integer; переменные целого типа
alfa: Real; переменная вещественного типа
b: Boolean; переменная логического типа
n, m: TIndex; переменные типа TIndex
x: TLitera; переменная типа TLitera
st: TStorona; переменная типа TStorona
k: 1..100; переменная интервального типа
В программе эти переменные могут принимать значения констант только своих типов,
Function, Procedure раздел описания функций и процедур
В программе он появляется только тогда, когда в ней используются функции и процедуры, написанные программистом.
Begin . . . End раздел операторов
В нем записываются операторы программы в соответствии с алгоритмом ее работы. Каждый оператор заканчивается точкой с запятой. На одной строке помещается по одному оператору. Раздел операторов заканчивается словом End, после которого ставится точка - это физический конец программы.
Пример: написать программу, определяющую сумму цифр целого трехзначного числа x = 543:
Program Summa;
Uses CRT;
Var x, s : Word;
Begin
ClrScr; очистка экрана
x := 534;
s := 0;
s := s + x Mod 10;
s := s + x Div 10 Mod 10;
s := s + x Div 10 Div 10 Mod 10;
WriteLn(`s=',s); вывод результата работы программы на экран
ReadLn;
End.
Комментарии
В любом месте программы, где разрешен пробел, можно записать пояснительный текст - комментарий. Он не обрабатывается компилятором и не включается в исполняемый exe-файл. Признак профессионализма программиста - наличие развернутых комментариев в программе.
Комментарии нужны в любой программе, даже если программа не очень объемная и не очень сложная. Обычно молодые и начинающие программисты (первокурсники) весьма самоуверенно пренебрегают этой рекомендацией. И здесь не столь важно, что вашу программу без комментариев будет трудно понять постороннему человеку, например, преподавателю. Преподаватель поймет все. Гораздо весомее тот аргумент, что вы сами через некоторое время ее забудете, и вам придется потратить много времени, чтобы в ней снова разобраться. Как правило, даже выгодно переписать ее заново, но уже с комментариями.
Комментарии в программе выполняют информационную роль и в общем случае должны раскрывать назначение программы как в целом, так и отдельных ее частей, а также должны описывать информационную модель решаемой задачи, акцентируя внимание на используемые математические методы и алгоритмы. В то же время во многих практических случаях достаточно будет ограничиться расшифровкой обозначений, инструкций по подготовке и вводу исходных данных, описанием получаемых данных.
Комментарием считается последовательность произвольных фраз, заключенных в символы {. . .} или (* . . .*):
{ это комментарий }
(* это комментарий *)
Поместить комментарий можно между любыми двумя соседними операторами программы или в конце оператора:
x:=x+1; {увеличиваем счетчик на единицу}
Комментарии можно использовать при отладке программы, временно исключая из текста программы те или иные участки с помощью таких скобок.
Ввод данных
Программы на алгоритмических языках обычно составляются таким образом, чтобы они могли быть использованы при различных наборах исходных данных. При этом исходные данные не задаются в программе операторами присваивания, а помещаются отдельно от программы, например, в файле на внешнем носителе, а в самой программе предусматривается возможность ввода нужных значений с устройств ввода-вывода (дисков, клавиатуры) в оперативную память и вывода результатов вычислений из памяти на внешние носители информации.
Под вводом данных понимается передача информации из внешних устройств в оперативную память компьютера.
...Подобные документы
Логические конструкции в системе программирования Паскаль. Команды языка программирования, использование функций, процедур. Постановка и решение задач механики в среде системы Паскаль. Задачи статики, кинематики, динамики решаемые с помощью языка Паскаль.
курсовая работа [290,9 K], добавлен 05.12.2008Изложение основ информатики, вычислительной техники и технологии программирования на языке Паскаль. Эволюция средств вычислений. Классификация программного обеспечения ЭВМ. Кодирование информации в ЭВМ, системы счисления, принципы программирования.
учебное пособие [1,4 M], добавлен 25.12.2009Международный стандарт на язык программирования Паскаль. Приемы объектно-ориентированного программирования в Турбо Паскале. Символы языка, его алфавит. Этапы разработки программы. Понятие алгоритмов и алгоритмизации. Структура программ на Паскале.
курсовая работа [29,8 K], добавлен 28.02.2010Особенности программирования на языке Паскаль в среде Турбо Паскаль. Линейные алгоритмы, процедуры и функции. Структура данных: массивы, строки, записи. Модульное программирование, прямая и косвенная рекурсия. Бинарный поиск, организация списков.
отчет по практике [913,8 K], добавлен 21.07.2012История и основы структурного программирования в среде Turbo Pascal. Работа с различными типами данных. Операторы языка. Работа с символьными и строковыми переменами, одномерным, двумерным массивами. Классификация компьютерных игр. Игры на языке Паскаль.
курсовая работа [28,8 K], добавлен 06.05.2014Язык программирования Турбо Паскаль. Запись алгоритма на языке программирования и отладка программы. Правила записи арифметических выражений. Стандартное расширение имени файла, созданного системным редактором. Составной оператор и вложенные условия.
курсовая работа [75,0 K], добавлен 21.03.2013Изучение символьных и строковых типов данных, алгоритма задачи на языке программирования Паскаль. Описания получения и установки отдельного символа строки, изменения регистра символов. Анализ создания и просмотра файла, поиска и сортировки информации.
курсовая работа [440,7 K], добавлен 13.06.2011Основные сведения о системе программирования Турбо Паскаль. Структура программы на Паскале и ее компоненты. Особенности и элементы языка Турбо Паскаль. Порядок выполнения операций в арифметическом выражении, стандартные функции и оператор присваивания.
лекция [55,7 K], добавлен 21.05.2009Освоение технологии структурного программирования и применения стандартных методов работы с одномерными массивами при разработке и создании программы на языке Турбо Паскаль. Разработка программы методом пошаговой детализации с помощью псевдокода.
реферат [276,9 K], добавлен 27.02.2008Сущность понятия "тип данных". Объектно-ориентированный стиль программирования. Простые типы данных в языке Паскаль: порядковые, вещественные, дата-время. Булевский (логический) тип. Синтаксис определения ограниченного типа. Регулярные типы (массивы).
реферат [24,1 K], добавлен 01.12.2009Изучение истории создания языка Турбо-Паскаль, важнейшего инструмента для обучения методам структурного программирования. Анализ меню управления всеми ресурсами интегрированной инструментальной оболочки, зарезервированных слов, символьных переменных.
презентация [989,7 K], добавлен 06.12.2011Программирование на языке Паскаль: алфавит, решение задач, простейшие программы, разветвляющие программы, циклические программы, ввод-вывод, массивы, подпрограммы, строковые данные, записи, файлы, использование библиотеки CRT, графика в Паскале.
учебное пособие [211,1 K], добавлен 30.03.2008Рассмотрение общих сведений и уровней языков программирования. Ознакомление с историей развития, использования языков программирования. Обзор достоинств и недостатков таких языков как Ассемблер, Паскаль, Си, Си++, Фортран, Кобол, Бейсик, SQL, HTML, Java.
курсовая работа [759,5 K], добавлен 04.11.2014Особенности способов описания языков программирования. Язык программирования как способ записи программ на ЭВМ в понятной для компьютера форме. Характеристика языка Паскаль, анализ стандартных его функций. Анализ примеров записи арифметических выражений.
курсовая работа [292,0 K], добавлен 18.03.2013Сравнительный анализ языков программирования высокого уровня Си и Паскаль. Реализация алгоритма обработки данных. Тестирование и отладка программы или пакета программ. Структура программы на языке Турбо Паскаль. Указатели и векторные типы данных.
курсовая работа [233,5 K], добавлен 14.12.2012Программирование нестандартных функций, задач оптимизации, дифференциального уравнения и аппроксимации с помощью языка Паскаль. Алгоритм и программа операций над матрицами. Нахождение значения корней нелинейного уравнения по методу половинного деления.
курсовая работа [1,1 M], добавлен 12.08.2011Общая характеристика языков программирования. Описание языка Паскаль: основные субъекты языка; структура Паскаль-программы; типизация и объявление данных. Операторы присваивания и выражения. Структурные операторы, организация ветвлений и циклов.
дипломная работа [276,6 K], добавлен 26.01.2011Паскаль как язык профессионального программирования, который назван в честь французского математика и философа Блеза Паскаля, история его разработки и функциональные особенности. Задача с использованием двумерного массива, составление блок-схемы решения.
контрольная работа [819,0 K], добавлен 12.03.2014Использование скриптового языка программирования для разработки web-приложений (сценариев). Изучение основ объектно-ориентированного программирования в языке PHP. Ознакомление со специальными методами для работы с классами. Назначение интерфейсов.
контрольная работа [25,1 K], добавлен 14.03.2015Описание конструкций языка программирования Паскаль, обеспечивающих ветвление. Организация циклических процессов. Создание программы для ввода последовательности вещественных чисел до появления 0, расчет среднего арифметического данной последовательности.
лабораторная работа [189,8 K], добавлен 17.04.2012