- •1 Введение
- •2 Сравнительный анализ языков высокого уровня Си и Паскаль
- •2.1 Алфавит и лексическая структура языков
- •2.2 Служебные слова
- •2.3 Идентификаторы
- •2.4 Комментарии
- •2.5 Структура программ
- •2.6 Типы данных
- •2.7 Массивы
- •2.8 Строки
- •2.9 Множества
- •2.10 Записи
- •2.11 Операции
- •2.12 Операторы ветвления
- •2.13 Операторы цикла
- •2.14 Заключение
- •3 Постановка задачи
- •3.1. Алгоритм решения поставленной задачи
- •4 Реализация проекта
- •4.1 Кнопка «Новая игра»
- •4.2 Кнопка «Демонстрация игры»
- •4.3 Кнопка «Рекорды»
- •4.4 Кнопка «о программе»
- •4.5 Кнопка «Выход»
- •4.6 Пользовательская библиотека «drawing.H»
- •5 Заключение
- •Список использованных источников
- •Приложение а (справочное)
2.2 Служебные слова
Служебные слова [4,5] – это ограниченная группа слов, построенных из букв. Каждое служебное слово представляет собой неделимое образование, смысл которого фиксирован в языке. Служебные слова нельзя использовать в качестве идентификаторов переменных и констант.
Примеры служебных слов:
array, and, begin, downto, end, if, then, else и другие (Паскаль);
include, define, return, if, else, и другие (Си).
2.3 Идентификаторы
Идентификаторы вводятся для обозначения в программе переменных, констант, типов, меток, процедур и функций и формируются из букв и цифр в соответствии со следующими правилами: идентификатор может начинаться только с буквы, длина идентификатора неограниченна, но фактически длина зависит от реализации системы программирования [2].
В языке Паскаль использование строчных букв эквивалентно построению соответствующих конструкций из прописных букв и применяется для стилистического оформления программы [4]. Иными словами, регистр при написании программ роли не играет. Таким образом, следующие три идентификатора обозначают одну и ту же переменную: index, INDEX, Index. Язык Си, в отличие от языка Паскаль, регистрозависим [5].
2.4 Комментарии
В текстах программ допускаются фрагменты пояснительного характера – комментарии [4]. В языке Паскаль комментарии представляют собой произвольную последовательность символов, заключенную в следующие символы [4]:
(* многострочный комментарий *)
{ многострочный комментарий }
В Си символы { } используются как операторные скобки. А комментарии записываются в следующем виде [5]:
/* многострочный комментарий */
// однострочный комментарий
2.5 Структура программ
Из источника [4] известно, что программа на языке Паскаль состоит из заголовка и «тела» программы, называемого блоком.
В заголовке указывается имя программы и список параметров. Заголовка может и не быть или он может быть без параметров.
Блок программы состоит из шести разделов, следующих в строго определенном порядке:
раздел меток (label);
раздел констант (const);
раздел типов (type);
раздел переменных (var);
раздел процедур и функций;
раздел действий (операторов).
Раздел действий должен присутствовать всегда, остальные разделы могут отсутствовать. Каждый из первых четырех разделов начинается с соответствующего ключевого слова (label, const, type, var), которое записывается один раз в начале раздела. В самом конце программы ставится точка «.».
Программа на языке Си состоит из одной или более функций, причем какая-то из них обязательно должна называться main(). С нее начинается выполнение программы [5].
Тело функции заключено в фигурные скобки и представляет собой набор операторов, каждый из которых оканчивается символом «точка с запятой» [5].
<подключаемые библиотеки>
{описание переменных}
main{
{описание переменных}
{тело программы} }
2.6 Типы данных
Данные [4] – это общее понятие для всего того, с чем оперирует вычислительная машина. В аппаратуре все данные представляются как последовательности двоичных цифр, такими же мыслятся данные и при программировании на уровне машинных команд. Языки высокого уровня позволяют абстрагироваться от деталей представления, главным образом за счет введения концепции типа данных.
Паскаль является типизированным, или статическим языком [4]. Это означает, что тип переменной определяется при ее описании и не может быть изменен. Переменная может участвовать только в операциях, допустимых ее типом. Такой подход способствует большей аккуратности и ответственности при составлении программы, делает их поддающимимся автоматической проверке на корректность и в конечном итоге приводит к более высокой надежности создаваемых программ.
Рисунок 2.6.1 – Система типов языка Паскаль
Из источника [4], базовыми в системе типов являются простые типы. Составные типы по определенным правилам строятся из простых. Ссылочные типы образуются из любых других типов. Ограниченные типы формируются из простых типов путем сужения их области допустимых значений. Как показано на рисунке 2.6.1, первичными в иерархии типов являются простые (скалярные) типы, представляющие традиционные в языках программирования множества значений (целые, вещественные, символьные, булевские) и их модификации, учитывающие архитектурные особенности аппаратуры. Любой скалярный тип характеризуется множеством его различных значений (таблица 2.6.1, таблица 2.6.2), среди которых установлен линейный порядок.
Таблица 2.6.1 – Скалярные типы данных языка Паскаль
Идентификатор |
Длина (байт) |
Диапазон значений |
Целые типы |
||
integer |
2 |
-32768..32767 |
byte |
1 |
0..255 |
Окончание таблицы 2.6.1
word |
2 |
0..65535 |
shortint |
1 |
-127..128 |
longint |
4 |
-2147483648..2147483647 |
Вещественные типы |
||
real |
6 |
2,9E-39 – 1,7E+38 |
single |
4 |
1,5E-45 – 3,4E+38 |
double |
8 |
5E-324 – 1.7E+308 |
extended |
10 |
3,4E-4932 – 1,1E+4932 |
Логический тип |
||
boolean |
1 |
true,false |
Символьный тип |
||
char |
1 |
Все символы кода ASCII |
Таблица 2.6.2 – Типы данных Си
-
Идентификатор
Длина (байт)
Диапазон значений
Целые типы
signed char
1
-128 – 127
unsigned char
1
0 – 255
signed short
2
-32768 – 35767
unsigned short
2
0 – 65535
signed int
2/4
-32768 – 32767
unsigned int
2/4
0 – 65535
signed long
4
-2147483648 – 2147483647
unsigned long
4
0 - 4294967295
Вещественные типы
float
4
3,14E-38 – 3,14E+38
double
8
1,7E-308 – 1,7E+308
long double
10
3,4E-4932 – 3,4E+4932
В языке Си нет отдельного логического типа.
Векторные типы в языке Паскаль включают в себя массивы, строки, множества, запись, указатели, файлы.