
- •Алфавит языка Паскаль. Правила построения идентификаторов.
- •Структура Паскаль-программы. Прокомментировать назначения разделов.
- •Структура программы на языке Паскаль такова:
- •Логические переменные в Паскале. Основные операции над ними. Логические выражения. Правила записи и вычсления сложных логических выражений.
- •Арифметические, строковые и логические выражения. Операции mod и div.
- •Формат и правила выполнения оператора присваивания.
- •Понятие и применение составного оператора.
- •Формат и правила выполнения условного оператора if.
- •Оператор цикла с известным числом повторений for: формат, порядок выполнения.
- •Оператор цикла с неизвестным числом повторений While: формат, порядок выполнения.
- •Оператор цикла с неизвестным числом повторений Repeat...Until: формат, порядок выполнения.
- •Сравнительный анализ возможностей оператора цикла с неизвестным числом повторений While и оператора цикла с известным числом повторений For.
- •Сравнительный анализ возможностей оператора цикла с неизвестным числом повторений Repeat...Until и оператора цикла с известным числом повторений For.
- •Сравнительный анализ возможностей операторов цикла с неизвестным числом повторений While и Repeat...Until.
- •Операторы ввода данных Read и Readln, их форматы, сходство и различие между операторами.
- •Операторы вывода данных Write и Writeln, их форматы, сходство и различие между операторами.
- •Оператор case: формат, порядок выполнения.
- •Организация управления выполнением программы с помощью меню (на примере).
- •Одномерный массив. Понятие, варианты об0ъявления, настройка на фактическое число элементов массива.
- •Алгоритм упорядочения элементов одномерного массива методом обмена пар смежных записей (метод "пузырька"). Рационализация алгоритма.
- •Алгоритм и особенности этой сортировки таковы:
- •Двумерный массив: понятие, варианты объявления, настройка на фактическое число строк и столбцов массива. Организация в программе вывода двумерного массива в матричной форме.
- •Основные действия с двумерными массивами Паскаля
- •Ввод двумерного массива Паскаля.
- •Вывод двумерного массива Паскаля на экран.
- •Представление двумерного массива Паскаля в памяти
- •Строки в Паскале: понятие, описание, варианты представления и использования.
- •Стандартные процедуры и функции работы со строками.
- •Понятие процедуры и функции в Паскале. Их назначение, применение, варианты размещения в программе.
- •Формат процедуры, размещение ее в программе обращение к ней из вызывающей программы.
- •Обмен информацией между процедурой и вызывающей программой: понятие формального и фактического параметра. Требования к этим параметрам, их описание и применение.
- •27. Формат функции в Паскале, размещение ее в программе, обращение к ней из вызывающей программы
- •28. Обмен информацией между функцией и вызывающей программой: понятие входных параметров, их описание, особенности технологии возврата результата.
- •29. Сравнительный анализ возможностей процедуры и функции. Возможности преобразования процедуры в функцию и наоборот.
- •30. Область действия имен. Глобальные и локальные переменные.
- •31. Достоинства и недостатки использования глобальных переменных и параметров при обмене информацией между программами. Рекомендации по применению.
- •32. Модуль в Паскале (Unit), его назначение, структура модуля, назначение и описание частей модуля.
Представление двумерного массива Паскаля в памяти
Элементы абстрактного массива в памяти машины физически располагаются последовательно, согласно описанию. При этом каждый элемент занимает в памяти количество байт, соответствующее его размеру. Например, если массив состоит из элементов типа integer , то каждый элемент будет занимать по два байта. А весь массив займет S^2 байта, где S – количество элементов в массиве.
Строки в Паскале: понятие, описание, варианты представления и использования.
VAR a : String говорит о том, что переменная a обязана иметь строковое (текстовое) значение, то есть ее значением будет не число, а произвольная цепочка символов
в программе текст должен браться в кавычки, а в памяти он хранится без кавычек и на экран выводится без кавычек.
Информация в ячейке памяти под строковую переменную может в процессе выполнения программы меняться точно так же, как и в ячейке для числовой переменной. Например, при выполнении фрагмента
Строковую переменную можно задавать не только оператором присваивания, но и оператором ReadLn. Пример:
VAR a : String;
BEGIN
WriteLn ('Введите какое-нибудь слово');
ReadLn (a);
WriteLn ('Вы ввели слово ' ,a)
END.
Исходные данные |
Операция |
Результат |
Пояснение |
s1:='Мото'; s2:='роллер' |
s3:=s1+s2 |
s3='Мото-роллер' |
Операция + над двумя строками просто соединяет две строки в одну |
s5:='Мото-роллер' |
k:=Pos('рол',s5) |
k=5 |
Функция Pos возвращает позицию, на которой находится строка 'рол' в строке s5 |
s3:='Мото-роллер' |
l:=Length(s3) |
l=10 |
Функция Length (длина) выдает (возвращает) количество символов в строк |
s3:='астро-ном' |
s4:=Copy(s3,3,4) |
s4= ‘трон’ |
Функция Copy возвращает часть строки длиной 4, начиная с третьего символа |
s5:='Коро-бочка'; |
Delete(s5,4,2) |
s5='Коро-чка' |
Процедура Delete удаляет из строки s5 два символа, начиная с четвертого |
s6:='Рука'; s7:='баш'; |
Insert(s7,s6,3) |
s6='Руба-шка' |
Процедура Insert вставляет в строку s6 строку s7, начиная с третьего символа |
x:=2.73284 |
Str(x:4:2,s8) |
s8='2.73' |
Процедура Str преобразует число в строку. 4:2 – это желаемый формат числа (см. Error: Reference source not found) |
s8='2.73' |
Val(s8,x,Osh) |
x=2.73 |
Процедура Val преобразует строку в число. Параметр Osh должен иметь тип Integer. Он имеет смысл при анализе ошибки в преобразовании |
Если задана строка s:='Банка', то считается автоматически заданным массив символов с тем же именем: s[1]=’Б’, s[2]=’а’, s[3]=’н’, s[4]=’к’, s[5]=’а’. Тогда после выполнения оператора s[3]:=’р’ мы получим s='Барка'.
Строки можно сравнивать. Условие s1=s2 считается выполненным, если обе строки абсолютно одинаковы, включая и пробелы. Сравнение идет посимвольно слева направо. Поэтому считается, что ‘панк’ < ‘парк’, так как первый несовпадающий символ ‘р’ имеет больший номер, чем ‘н’.
Строкой в Паскале называется последовательность из определенного количества символов. Количество символов последовательности называется длиной строки.
var s: string[n];
var s: string;
n - максимально возможная длина строки - целое число в диапазоне 1..255. Если этот параметр опущен, то по умолчанию он принимается равным 255.
Строковые константы записываются как последовательности символов, ограниченные апострофами. Допускается формирование строк с использованием записи символов по десятичному коду (в виде комбинации # и кода символа) и управляющих символов (комбинации ^ и некоторых заглавных латинских букв).
Пример:
'Текстовая строка'
#54#32#61 'abcde'^A^M
Пустой символ обозначается двумя подряд стоящими апострофами. Если апостроф входит в строку как литера, то при записи он удваивается.
Переменные, описанные как строковые с разными максимальными длинами, можно присваивать друг другу, хотя при попытке присвоить короткой переменной длинную лишние символы будут отброшены.
Выражения типа char можно присваивать любым строковым переменным.
Над строковыми данными определена операция слияния (конкантенации), обозначаемая знаком +. Например:
a := 'Turbo';
b := 'Pascal';
c := a + b;
В этом примере переменная c приобретет значение 'TurboPascal'.
Кроме слияния над строками определены операции сравнения <,>,=,<>,<=,>=. Две строки сравниваются посимвольно, слева направо, по кодам символов. Если одна строка меньше другой по длине, недостающие символы короткой строки заменяются символом с кодом 0.