Fruitsekta.ru

Мир ПК
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Константы и переменные паскаль

Переменные и константы

Переменные

Любая программа обрабатывает данные (информацию, объекты). Данные, с которыми работает программа, хранятся в памяти компьютера (чаще оперативной). Программа должна знать, где они лежат, каким объемом памяти она располагает, как следует интерпретировать данные (например, как числа или строки). Для обеспечения программе доступа к участкам памяти существует механизм переменных.

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

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

Имена переменных могут быть почти любым сочетанием английских букв и цифр (без пробелов). Нельзя чтобы имена переменных совпадали со словами, которые являются какими-либо командами самого языка программирования. Нельзя начинать имена переменных с цифры или специального символа. Для того чтобы имена переменных были удобны для восприятия, надо стараться придерживаться пары правил. Если программа не простейший пример, то имена переменных должны быть осмысленными словами или их сокращениями. Желательно, чтобы имена переменных не были слишком длинными.

В Pascal прописные и строчные буквы в именах переменных не различаются.

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

В примере ниже происходит ввод значений трех переменных разных типов и выполнение допустимых для их типов операций. Если тип переменных integer, то им можно присваивать только целые числа в диапазоне от -32768 до 32767. Под тип integer в языке программирования Паскаль отводится 2 байта, что равно 16 битам, а это значит, что можно хранить 2 16 (65536) значений (отрицательные и положительные числа, а также ноль). В этих диапазонах переменные int1 и int2 могут принимать какие угодно значения. При попытке записи в переменную значения не ее типа возникнет ошибка.

Пример работы программы:

Итак, переменные связаны с участками памяти, содержимое которых может меняется по ходу выполнения программы в определенных пределах.

Длина переменных

Ранние версии компиляторов Паскаля имели ограничение на учитываемую длину имен переменных. В имени учитывались лишь первые восемь символов. Поэтому, например, такие переменные как variable1 и variable2 компилятор воспринимал как одно и тоже, т.к. первые восемь символов совпадали.

В современных версиях компиляторов с языка Pascal таких ограничений нет. Например, в результате работы приведенной ниже программы как в среде Free Pascal, так и Turbo Pascal 7.1 на экран выводятся два разных числа (10 и 20). Это значит, что компиляторы учитывают больше восьми символов в именах переменных (и других идентификаторов: именах констант, процедур и др.).

Константы

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

Главное преимущество констант заключается в том, что они описываются в начале программы и им сразу там же присваивается значение, а при выполнении программы константы не изменяются. Но если при правке кода, программист решит поменять значение константы, он впишет в ее описание другое значение, а сам код программы редактировать не придется. Поэтому, если в программе часто планируется использоваться какое-то значение, опишите его в разделе констант, который в программе располагается до раздела переменных:

Значениями констант могут быть данные большинства типов, используемых в языке Паскаль.

Рассмотрим такую программу:

В ней используется константа n со значением 10. Программа считает сумму десяти чисел в диапазоне от 1 до 10. Если нам захочется посчитать сумму чисел до 20, то достаточно будет изменить значение константы в начале программы. Если бы константа не использовалась, то пришлось бы просмотреть весь код программы и исправить значение 10 на 20. Если программа большая, то легко ошибиться: не найти или исправить не то значение.

Читать еще:  Запишите по правилам языка паскаль выражение

Типизированные константы

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

Описываются типизированные константы в разделе констант:

Pascal. Переменные и константы

Общие сведения

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

Переменные имеют тип и объявляются в специальном разделе Var (от англ. Variable – переменная):

Константы в Pascal

Те переменные, которые не изменяются, называются константами. Также как и переменные, они должны быть объявлены в специальном разделе – Сonst (от англ. Constant — константа). Различают следующие типы констант:

1) Целочисленные константы. Содержат десятичные или шестнадцатеричные числа с положительным, либо отрицательным знаком;

2) Вещественные константы. Записываются в виде десятичной дроби, с использованием точки, а также могут иметь показатель степени (е).

3) Символьные константы. Единичный символ, записанный в апострофы.

4) Строковые константы. Некоторая произвольная последовательность символов, заключенная в апострофы.

‘Pascal programming language’

5) Типизированные константы. Инициализированные переменные, которые, несмотря на свою «константность» могут использоваться в программе, также как и обычные переменные.

Типизированные константы инициализируются всего один раз – в начале программы.

Рассмотрим программу «Hello world!» с использованием константы.

В данном случае мы объявили константу hello равную значению ‘Привет, ‘. Далее в программе достаточно в нужном месте подставить эту константу. Теперь если нам вдруг понадобиться вместо программы, которая здоровается, сделать программу, которая прощается, достаточно в начале программы поменять «Привет, » на «До свидания, » и программа будет прощаться с пользователем.

Если Вы обратили внимание, то в примере у константы не указан явно не указан тип, такие константы называются Обычными константами. Тип обычных констант определяется по их значению.

Помимо обычных констант существуют Типизированные константы. Тип таких констант объявляется явно:

Дополнительно хочется обратить внимание на апострафы в константах. Если Вам в константе понадобится использовать апострофы, то просто продублируйте их:

Переменные в Pascal

Для хранения данных, полученных от пользователя, в программе вводятся переменные. К примеру для того, чтобы передать программе имя какого-то человека нам нужно в коде программы записать строчку:

Данная строка сообщает нашей программе о том, что нужно получить данные от пользователя и сохранить их в переменную name , которую мы указываем в скобках оператора Read (с англ.: читать). Более подробно про ввод/вывод в Pascal читайте в уроке «Pascal. Операторы ввода-вывода«.

Хочу обратить Ваше внимание на тот факт, что все идентификаторы(переменные, название программы) в коде Turbo Pascal могут состоять исключительно из символов латинского алфавита (A-Z, a-z), цифр (0-9) и символа нижнего подчеркивания («_»). Также идентификаторы не должны начинаться с цифр.

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

Для целых чисел часто используются два основных типа: Integer и LongInt . Единственным отличием типов переменных, используемых для одного формата данных, — это Диапазон допустимых значений. К примеру для Integer диапазон допустимых значений [-32768, 32767] , то есть минимальным значением для переменной типа Integer является число -32768 , а максимальным — 32767 . Более подробно про типы данных читайте в уроке «Типы данных языка Pascal«.

Примеры

Пример 1

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

Для получения информации от пользователя в процессе работы программы в Turbo Pascal существуют операторы Read и Readln .

Данные операторы отличаются лишь тем, что после считывания Readln делает перевод строки, а Read не переводит (существует оператор Writeln , который после печати на экран также переводит каретку на первую позицию следующей строки).

Теперь разберем, что я тут написал.

Uses Crt; — в этой строке подключается модуль с именем Crt. Прочитать про модули можно в уроке «Pascal. Пользовательские модули«, хотя Crt является стандартным модулем и все что нам нужно знать в настоящее время — эта строчка нужна для использования функции ClrScr , которая очищает экран.

Читать еще:  Группы символов образующих алфавит языка паскаль

Var name:string; — здесь мы объявляем переменную name типа string(строка) , в которой будем хранить введенное пользователем имя.

Begin — начало раздела описания. Собственно отсюда и начинается выполнение тела нашей программы.

ClrScr; — от английского Clear Screen, что значит «очистить экран» . Этот оператор служит для очистки экрана вывода. Если им не пользоваться, то после очередного запуска программы мы будем видеть предыдущий результаты работы компилятора.

Write(‘Введите имя: ‘); — здесь мы выводим печатаем строку «Введите имя: » .

Read(name); — сохраняем введенную пользователем информацию в переменную name . В нашем случае мы сохраняем в переменную name введенное имя.

Write(‘Привет, ‘, name, ‘!’); — для того чтобы вывести несколько разных строк (переменных), совсем не обязательно для каждой строки писать свой write или writeln , достаточно перечислить их в скобках через запятую. В данном примере я одним оператором write вывел сразу три строчки: 1)’Привет, ‘ ; 2)name ; 3)’!’ .

ReadLn — а это своеобразная задержка, чтобы после выполнения компилятор сразу не закрывал окно результата, а дождался нажатия клавиши пользователем.

End. — конец программы тела программы.

У некоторых из Вас наверняка возник вопрос: «А почему в предпоследней строчке после оператора Readln не стоит точка с запятой?». Так вот, точка с запятой является разделителем между операторами, который сообщает компилятору о конце одного и начале второго оператора. Но поскольку после последнего оператора идет End. , то знак ; можно опустить.

Пример 2

Теперь попробуем объявить несколько переменных разного типа. Допустим мы хотим знать имя пользователя, его возраст и его рост. Для этого возьмем код программы их первого примера и изменить в соответствии с новыми требованиями.

Хочу обратить ваше внимание на 5 строчку кода. Когда у нас есть несколько переменных одного типа, мы можем объявить их в одной строке, описав их через запятую и после последнего поставить знак двоеточия и написать требуемый тип.

Уроки Паскаль

Иногда, бывает так, что у нас в программе встречаются величины, которые не меняются в процессе выполнения программы (т.е. фактически они противоположность переменных). Такие величины называются константами. Константы указываются в специальном разделе, который называется Const.

В качестве констант в языке программирования Pascal могут использоваться:

  • Целые числа. Они записываются со знаком или без знака и могут иметь значение от – 2 147 483 648 до + 2 147 483 647. Если константа имеет значение, выходящее за эти пределы, то в качестве значения константы необходимо использовать вещественные числа.
  • Вещественные числа записываются со знаком или без знака с использованием десятичной точки или экспоненциальной части, которая начинается с символа «e», за которым следует десятичный порядок. Например, запись 3.14e5 означает 3,14*10 5 . А запись – 3.14e-4 означает – 3,14*10 -4 .
  • Шестнадцатеричные числа, которые состоят из шестнадцатеричных цифр со знаком доллара «$» впереди. Диапазон шестнадцатеричных чисел — от $00000000 до $FFFFFFFF.

Строка №3. Раздел Const — это раздел, который описывает константы. Он должен находиться перед разделом Var, описывающий переменные. В данном случае, в разделе описания констант мы записываем константу «G», которая будет являться именем нашей константы (имя мы придумываем сами) и указываем для нее значение 9.8. В нашей программе константа «G» будет описывать ускорение свободного падения, которое, как известно, величина постоянная и равна 9.8 м/с. Тип константы определяется автоматически. Т.е. здесь, в отличии от раздела описания переменных Var не нужно указывать тип данных. В данном случае число 9.8 дробное, поэтому тип данных будет вещественным. Обратите внимание, что когда мы присваиваем константе какое-либо значение, то используется знак «=». Это отличает константы от переменных. Если Вы помните, то при присвоении переменной какого-либо значения используется знак «:=».

В строке №9 записываем формулу для расчета скорости свободного падения, которая, как известно, вычисляется по формуле V 2 =2gh

В появившемся окне введем высоту башни, например 10, и нажмем Enter.

Использование шестнадцатеричных чисел в качестве значения константы.

В строке №3 записываем имя константы, которое придумываем сами. Например, назовем константу латинской буквой «t». Затем присваиваем константе значение $f. «f» в шестнадцатеричной системе счисления имеет значение 15.
В строке №6 выводим значение константы на экран.

Дополнение к материалу.

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

Читать еще:  Динамические данные паскаль

лабы по информатике, егэ

лабораторные работы и задачи по программированию и информатике, егэ по информатике

Pascal: Занятие №1. Часть 3: Типы данных в Паскаль

Типы данных в Паскале

Паскаль — это типизированный язык программирования. Это означает, что переменные, в которых хранятся данные, имеют определенный тип данных. Т.е. программе напрямую надо указать, какие данные могут храниться в той или иной переменной: текстовые данные, числовые данные, если числовые — то целочисленные или дробные, и т.п. Это необходимо в первую очередь для того чтобы компьютер «знал», какие операции можно выполнять с этими переменными и как правильно их выполнять.

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

Рассмотрим наиболее распространенные в Pascal типы данных.

Целочисленные типы данных в Паскаль

ТипДиапазонТребуемая память (байт)
byte0..2551
shortint-128..1271
integer-32768.. 327672
word0..655352
longint-2147483648..21474836474

Нужно иметь в виду, что при написании программ в паскале integer (в переводе с англ. целое) является наиболее часто используемым, так как диапазон значений наиболее востребуем. Если необходим более широкий диапазон, используется longint (long integer, в переводе с англ. длинное целое). Тип byte в Паскале используется, когда нет необходимости работать с отрицательными значениями, то же самое касается и типа word (только диапазон значений здесь значительно больше).

Примеры того, как описываются (объявляются) переменные в Паскале:

program a1; var x,y:integer; <целочисленный тип>myname:string; <строковый тип>begin x:=1; y:=x+16; myname:=’Петр’; writeln (‘имя: ‘,myname, ‘, возраст: ‘, y) end.

Результат:
имя: Петр, возраст: 17

Комментарии в Паскале

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

Вещественные типы данных в Паскаль

Вещественные числа в Паскале и вообще в программировании — это название дробных чисел.

ТипДиапазонТребуемая память (байт)
real2.9 * 10E-39 .. 1.7 * 10E386
single1.5 * 10 E-45 .. 3.4 * 10E384
double5 * 10E-324 .. 1.7 * 10E3088
extended1.9 * 10E-4951 .. 1.1 * 10E493210

Тип real в Паскале — наиболее часто используемый из вещественных типов.

Выше были представлены простые типы данных в Паскаль, к которым относятся:

  • Порядковые
  • Целые
  • Логические
  • Символьные
  • Перечисляемые
  • Интервальные
  • Вещественные

Для вывода значений переменных вещественного типа обычно используется форматированный вывод:

Наряду с простыми типами в языке еще используются структурированные типы данных и указатели, которым будут посвящены последующие уроки по Паскалю.

Константы в Паскале

Зачастую в программе заранее известно, что переменная будет принимать какое-то конкретное значение и не менять его на протяжении выполнения всей программы. В таком случае необходимо использовать константу.

Объявление константы в Паскале происходит до объявления переменных (до служебного слова var ) и выглядит следующим образом:

Пример описания константы в Паскале:

const x=17; var myname:string; begin myname:=’Петр’; writeln (‘имя: ‘,myname, ‘, возраст: ‘, х) end.

«Красивый» вывод целых и вещественных чисел

Для того чтобы после вывода значений переменных оставались отступы, чтобы значения не «сливались» друг с другом, принято через двоеточие указывать какое количество символов нужно предусмотреть для вывода значения:

Вывод целых чисел

Вывод вещественных чисел

Арифметические операции в Паскале

ДЕЙСТВИЕРЕЗУЛЬТАТСМЫСЛ
2 + 35плюс
4 — 13минус
2 * 36умножить
17 div 53целочисленное деление
17 mod 52остаток от целочисленного деления

Порядок выполнения операций

  1. вычисление выражений в скобках;
  2. умножение, деление, div, mod слева направо;
  3. сложение и вычитание слева направо.

Стандартные арифметические процедуры и функции Pascal

Здесь стоит более подробно остановиться на некоторых арифметических операциях.

    Операция inc в Паскале, произносимая как инкремент, это стандартная процедура pascal, которая обозначает увеличение на единицу.

Пример операции inc:

Более сложное использование процедуры inc:
Inc(x,n) где x — порядкового типа, n — целого типа; процедура inc увеличивает x на n.

  • Аналогично работает процедура Dec в Паскале: Dec(x) — уменьшает x на 1 (декремент) или Dec(x,n) — уменьшает x на n.
  • Оператор abs представляет собой модуль числа. Работает следующим образом:

    Пример использования функции odd:

    begin WriteLn(Odd(5)); WriteLn(Odd(4)); end.

    Пример использования процедуры sqr в Pascal:

    var x:integer; begin x:=3; writeln(sqr(x)); <ответ 9>end.

    Формула такая: exp(ln(a)*n) , где а — число, n — степень (а>0).

    Однако в компиляторе pascal abc возведение в степень осуществляется значительно проще:

    Пример использования процедуры sqrt в Pascal:

    var x:integer; begin x:=9; writeln(sqrt(x)); <ответ 3>end.

  • Ссылка на основную публикацию
    Adblock
    detector