какие типы переменных использовались в ваших программах

Какие типы переменных использовались в ваших программах

Содержание раздела PASCAL

Тип переменной задает вид того значения, которое ей присваивается и правила, по которым операторы языка действуют с переменной, например:

Если переменные A и B целочисленного типа, то программа:

Выведет на экран строку: “3.14 2.71 5.85”

Если же они строкового типа, то программа:

Выведет: “3.14 2.71 3.142.71”, так как оператор сложения просто добавит строку B в конец строки A.

Тип константы определяется способом записи ее значения:

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

число с дробной частью от 2.9*10-39.до 1.7*1038, может принимать и отрицательные значения, на экран выводится с точностью до 12-го знака после запятой, если результат какой либо операции с REAL меньше, чем 2.9*10-39, он трактуется как ноль. Переменная типа REAL занимает шесть байт.

При обьявлении переменной строкового типа можно заранее указать ее длину в байтах – X:

MyString:STRING[X];
При присвоении этой переменной строки длиннее X, присваиваемая строка будет обрезана с конца после X-того символа.

Размер переменной типа STRING в памяти можно узнать следующим способом:
Size:=SizeOf(MyString);
Функция SizeOf() возвращает размер, занимаемый переменной, служащей параметром. Параметром может служить и тип переменной; строка:
Writeln(SizeOf(STRING));
Выведет на экран число 256, так как по умолчанию под все строки отводится по 256 байт.

Кроме того, можно узнать, сколько символов в строке (индекс последнего непустого символа в строке):
Size:=Ord(MyString[0]);
Используется ибращение к нулевому элементу (символу) строки, в котором хранится ее длина, но MyString[0] – значение типа CHAR, тоесть символ, код которого равен длине строки, нужный нам код – число возвращает функция Ord()Таким же образом можно обратиться к любому N – тому элементу строки:
MyChar:=MyString[N];

BYTEцелое число от 0 до 255, занимает одну ячейку памяти (байт).
BOOLEANлогическое значение (байт, заполненный единицами, или нулями), true, или false.
WORDцелое число от 0 до 65535, занимает два байта.
INTEGERцелое число от –32768 до 32767, занимает два байта.
LONGINTцелое число от –2147483648 до 2147483647, занимает четыре байта.
REAL
DOUBLE
ARRAY[a..b,c..d,….] OF “тип элемента”;массив некоторой размерности, содержащий элементы указанного типа.

Диапазоны индексов для каждого измерения указываются парами чисел или констант, разделенных двумя точками, через запятую (a..b,c..d). После OF записывается тип элементов массива. В памяти массив занимает место, равное: (b-a)*(d-c)*..* SizeOf(“тип элемента”). Размер массива не может превосходить 65536 байт.

Обращение к элементам массива происходит следующим образом:
X:=MyArray[a,b,c. ];

При этом переменная X должна быть того же типа, что и элементы массива или приводимого типа. Число индексов (a,b,c. ) должно быть равно числу обьявленных при описании измерений массива.

какие типы переменных использовались в ваших программах. Смотреть фото какие типы переменных использовались в ваших программах. Смотреть картинку какие типы переменных использовались в ваших программах. Картинка про какие типы переменных использовались в ваших программах. Фото какие типы переменных использовались в ваших программах

В Паскале существуют ограничения на присвоение значений одних переменных другим. Если переменные которую и которой присваивают одного типа, то никаких проблем не возникнет. Но если они разных типов, присвоение не всегда может быть произведено. Это связано стем, что при таком присвоении необходимо отсечь часть информации, а какую – компьютер “не знает”.

Проблема возникает при следующих присвоениях:
I:=J;
A:=B;

В то же время, такие присвоения будут выполнены вполне корректно:
J:=I;
B:=A;

При этом переменная J примет значение с нулевой дробной частью, а B – станет строкой, содержащей один символ – из A.

В первом же случае, можно поизвести следующие операции:
I:=Trunc(J); <функция trunc() возвращает целую часть аргумента>
I:=Round(J);

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

Источник

Паскаль — Типы переменных

Переменная — это не что иное, как имя, данное области памяти, которой могут манипулировать наши программы. Каждая переменная в Паскале имеет определенный тип, который определяет размер и расположение памяти переменной; диапазон значений, которые могут быть сохранены в этой памяти; и набор операций, которые могут быть применены к переменной.

Основные переменные в Паскале

Обычно один октет (один байт). Это целочисленный тип.

Наиболее натуральный размер целого числа для машины.

Значение с плавающей запятой одинарной точности.

Указывает истинные или ложные логические значения. Это также целочисленный тип.

Определяет пользовательский список.

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

Хранит массив символов.

Обычно один октет (один байт). Это целочисленный тип.

Наиболее натуральный размер целого числа для машины.

Значение с плавающей запятой одинарной точности.

Указывает истинные или ложные логические значения. Это также целочисленный тип.

Определяет пользовательский список.

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

Хранит массив символов.

Язык программирования Pascal также позволяет определять различные другие типы переменных, которые мы рассмотрим в следующих главах, таких как Pointer, Array, Records, Sets, Files и т. Д. В этой главе мы изучим только основные типы переменных.

Объявление переменных в Паскале

Здесь тип должен быть допустимым типом данных Pascal, включая символьные, целые, действительные, логические или любые другие определяемые пользователем типы данных и т. Д., А variable_list может состоять из одного или нескольких имен идентификаторов, разделенных запятыми. Некоторые действительные объявления переменных показаны здесь —

В предыдущем уроке мы обсуждали, что Pascal позволяет объявлять тип. Тип может быть идентифицирован по имени или идентификатору. Этот тип может использоваться для определения переменных этого типа. Например,

Теперь определенные типы могут использоваться в объявлениях переменных —

Инициализация переменной в Паскале

Переменным присваивается значение с двоеточием и знаком равенства, за которым следует постоянное выражение. Общая форма присвоения значения —

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

Вот некоторые примеры:

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

Когда приведенный выше код компилируется и выполняется, он дает следующий результат —

Перечисляемые переменные

Вы видели, как использовать простые типы переменных, такие как integer, real и boolean. Теперь давайте посмотрим переменные перечислимого типа, которые можно определить как —

Когда вы объявили перечислимый тип, вы можете объявить переменные этого типа. Например,

Следующий пример иллюстрирует концепцию —

Когда приведенный выше код компилируется и выполняется, он дает следующий результат —

Переменные поддиапазона

Переменные поддиапазона объявляются как —

Примеры поддиапазонных переменных:

Следующая программа иллюстрирует концепцию —

Когда приведенный выше код компилируется и выполняется, он дает следующий результат —

Источник

Урок 1 — Переменные и константы. Первая программа

В этом уроке рассмотрим:

Разделы справочной информации внимательно читать не обязательно, к ним стоит обращаться по мере необходимости.

1 Структура программы на Паскаль

PROGRAM имя программы;
(английскими буквами, одно слово. Хотите глубже? То необходимо воспользоваться правилами написания идентификаторов )

USES подключаемые библиотеки (модули);
(дополнительные возможности, их можно подключать к программе в этой строке)

LABEL список меток;
(из одного места программы «прыгать» в другое)

CONST раздел описания констант;
(постоянные величины, их нельзя изменять)

TYPE описание типов переменных;

VAR определение глобальных переменных;
(описание всех переменных величин, которые в программе могут изменяться)

основной блок программы

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

Данная программа ни чего не делает, так как в ней нет ни одного оператора.

2 Пример программы на Pascal

Результатом данный программы будет вывод на экран строки «Hello, World!».

Запустите Turbo Pascal и перепишите исходный код программы. Теперь запустите программу, это можно сделать зажав сочетание клавиш Ctrl+F9. Результат выполнения программы всегда можно посмотреть зажав сочетание клавиш Alt+F5.

3 Константы и переменные. Примеры

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

3.1 Константы

Те переменные, которые не изменяются, называются константами. Различают следующие типы констант:

‘Pascal programming language’

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

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

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

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

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

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

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

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

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

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

4 Справочная информация по типам данных

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

По способу представления и обработки типы данных бывают:

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

4.1 Целочисленный тип

Сюда входят несколько целочисленных типов, которые различаются диапазоном значений, количеством байт отведённых для их хранения и словом, с помощью которого объявляется тип.

ТипДиапазонРазмер в байтах
shortint-128…1271
integer-32 768…32 7672
longint-2 147 483 648…2 147 483 6474
byte0…2551
word0…65 5352

Объявить целочисленную переменную можно в разделе Var, например:
Var book: word;

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

4.2 Вещественный тип

В Паскале бывают следующие вещественные типы данных:

ТипДиапазонПамять, байтКоличество цифр
Real2.9e-39 … 1.7e38611-12
Single1.5e-45 … 3.4e3847-8
Double5.0e-324 …1.7e308815-16
Extended3.4e-4932 … 1.1e4931019-20
Comp-9.2e63 … (9.2e63)-1819-20

Над ними может быть выполнено большее количество операций и функций, чем над целыми. Например, эти функции возвращают вещественный результат:

4.3 Логический тип

4.4 Символьный тип

Символьный тип данных – это совокупность символов, используемых в том или ином компьютере. Переменная данного типа принимает значение одного из этих символов, занимает в памяти компьютера 1 байт. Слово Char определяет величину данного типа. Существует несколько способов записать символьную переменную (или константу):

К величинам символьного типа данных применимы операции отношения и следующие функции:

4.5 Строковый тип

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

Var A: (Monday, Tuesday);

4.6 Интервальный тип данных

Когда необходимо задать какой то диапазон значений, то в таких ситуациях применяется интервальный тип данных. Для объявления используется конструкция m..n, где m – минимальное (начальное) значение, а n – максимально (конечное); здесь m и n являются константами, которые могут быть целого, символьного, перечисляемого или логического типа. Описываться величины интервального типа могут как в разделе типов, так и в разделе описания переменных.

5 Pascal. Операторы ввода-вывода

5.1 Ввод данных

Процедура ввода данных с клавиатуры – Read (читать). Ее можно представить так:

Для перевода каретки после выполнения оператора Read на новую строку, следует прибавить окончание ln :

Также можно не указывать список ввода:

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

5.2 Вывод данных

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

Здесь x и y – параметры, заключенные в круглые скобки. Возможно использование оператора вывода и без параметров:

Недостаточно просто вывести значение на экран, нужно также сделать это как можно корректнее. Допустим нам нужно в одном операторе Write вывести значения нескольких переменных ( a=1, b=2, c=3 ). Пишем:

1) Вписать пробел вручную, например:

2) Воспользоваться возможностью форматированного вывода:

Двоеточие относиться к переменной, после которой оно следует, и говорит программе, что при выводе (переменной) нужно выделить место, заданное целым числом (в нашем случае это 2), т. е. под значения, хранящиеся в переменных b и c отводиться две клетки, сами они выведутся «прижатыми» к правому краю.

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

Результат выполнения: 32.101

Формат 5 означает, что всего под число 32.1012 выделено 5 клеток, а 2 – из этих пяти под дробную часть отводиться 2 клетки.

6 Выражения с тандартные функции

6.1 Стандартные функции Pascal

В программировании, довольно часто приходиться выполнять однотипные действия, причем в задачах разного уровня и класса. И для ускорения процесса написания кода эти действия выносят в специальные подпрограммы – стандартные функции. Обращение к такой подпрограмме происходит по ее имени, а в скобках указывается значение аргумента. В следующей таблице указаны те стандартные функции, которые используются в языке программирования Pascal.

ФункцияНазначение
ABS(x)Вычисление абсолютного значения x: |х|
SQR(x)Вычисление квадрата x: x*x
SIN(x)Вычисление синуса x: sin x
COS(x)Вычисление косинуса x: cos x
ARCTAN(x)Вычисление арктангенса x: arctg x
EXP(x)Вычисление экспоненты (числа Е) в степени x
EXP10(x)Вычисление 10 в степени x
LN(x)Вычисление натурального логарифма x
LOG(x)Вычисление десятичного логарифма x
SQRT(x)Вычисление квадратного корня из x
A DIV BВычисление частного при делении А на В с отбрасыванием остатка
A MOD BНахождение остатка от делении А на В
TRUNC(x)Нахождение целой части x
RANDOM(x)Псевдослучайное число в интервале [0, x]
ROUND(x)Округление значения x в сторону ближайшего целого
ODD(x)Проверяет аргумент на нечетность. Результат TRUE, если аргумент нечетный, FALSE – если четный.
ORD(x)Возвращает порядковый номер аргумента и, как следствие, преобразует величину порядкового типа в величину целого типа.
CHR(x)Определение символа языка Паскаль по его порядковому номеру
SUCC(x)Нахождение элемента, идущего после данного в перечне допустимых элементов
PRED(x)Нахождение элемента, идущего перед данным в перечне допустимых элементов
FRAC(X)Возвращает дробную часть x
INT(X)Возвращает целую часть x
PiЗначение математической постоянной π
EOF(x)Возвращает TRUE, если файл находится в стоянии “конец файла”, иначе FALSE, если нет конца файла

6.2 Выражения в Pascal

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

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

Такое логическое выражение возвращает истину, лишь в том случае, когда истинны оба выражения, т. е. если a входит в диапазон от 1 до 20 включительно. Стоит обратить внимание на скобки, здесь они необходимы для изменения приоритета, так как у операторов сравнения он низший.

3) (a+3>0) and (a+3 1) and (b

Условие вернет истину, тогда когда истинными будут два условия слева или справа от OR, а также если они оба будут истинными.

Логическая операция OR (или) суть дизъюнкция в логики и поэтому имеет следующую таблицу истинности:

XYX or Y
000
011
101
111

Ложь имеет место только когда X и Y ложны (нули). В том случае, чтобы истина возвращалась только тогда, когда одно из условий верно следует применить оператор XOR (исключающее или):

(a+3>0) and (a+3 1) and (b

В Pascal нет функции возведения числа в степень (кроме степени 2), поэтому существует два пути:

1 — умножать число само на себя, какое то количество раз;

2 — воспользоваться функциями экспоненты и натурального логарифма.

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

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *