Файл: Понятие переменной в программировании. Виды и типы переменных (Понятие переменных и их использование).pdf
Добавлен: 26.06.2023
Просмотров: 72
Скачиваний: 3
Вступление
Переменная — это именованный участок памяти, где хранится значение, которое быть может изменено программкой. Все переменные перед их внедрением обязаны быть оглашены. Общественная форма объявления[1] имеет такой вид:
Тут вид значит 1 из базисных либо заявленных разработчиком программного обеспечения типов (если нужно будет — с одним либо несколькими спецификаторами), а список переменных состоит из 1-го или же более личных номеров, разделенных запятыми. Ниже приведены примеры объявлений:
int i,j,l;
short int si;
unsigned int ui;
double balance, profit, loss;
Нужно будет припоминать, что в С имя переменной ни разу не описывает ее вид.
Объявление переменных быть может находиться в 3-х местах: внутри функции, в определении характеристик функции и вне всех функций. Это - места объявлений соответственно локальных, формальных характеристик функций и масштабных переменных.
Метод состоит из команд исполнителю. Исполнитель может, в собственную очередь, командовать иными исполнителями. Комп вполне возможно осматривать как все пригодный исполнитель, который правит иными исполнителями. Рассмотрим, к примеру, авто с инжекторы мотором. В нем работой мотора правит PC (его время от времени именуют микропроцессорный блок). Комп получает эти от разнородных датчиков (датчики положения коленчатого вала и дроссельной заслонки, температуры остужающей воды, скорости, детонации, воздуха и др.) и дает приказания выполняющим системам мотора - модулю зажигания, бензонасосу, форсункам мотора, регулятору холостого хода, системе продувки адсорбера и т.д. Этим образом, и датчики, и выполняющие системы мотора справляются компом, который выступает в роли многоцелевого исполнителя.
Запись метода все пригодного исполнителя может включать команды, адресованные ему именно, а еще команды, что необходимо передать подчиненным исполнителям.
Как правило, многоцелевой исполнитель имеет свою память, и исполнение им команд может приводить не к любым наружным поступкам, а к изменению его внутреннего состояния. К примеру, используя сигналы от датчика фазы, PC авто вычисляет текущие обороты мотора (которые демонстрирует на тахометре). Используя данные эти и информацию, поступающую от датчика скорости авто, комп может определить, какая предоставление интегрирована в явный момент времени. Затем рассчитывается нынешняя перегрузка на мотор и устанавливается, какой обязана быть смесь топлива и воздуха, подаваемая в цилиндры мотора. В зависимости от этого сервируются команды на открытие форсунок. От степени обогащения смеси находится в зависимости момент зажигания - чем богаче смесь, тем позднее момент зажигания; таковым образом, подаче команды модулю зажигания предшествуют достаточно трудоемкие вычисления.
Таковым образом, PC авто, правящий работой, хранит в каждый момент времени в собственной памяти текущие скорость, передачу, нагрузку на движок, температуру остужающей воды, необходимую степень обогащённой смеси и прочие характеристики. Данные характеристики временами пере вычисляются на основании сигналов от многообразных датчиков. В зависимости от значений характеристик, PC передает те или же другие сигналы правящим системам двигателя.
Значение каждого параметра хранится в особом участке памяти компа и может изменяться в ходе исполнения метода. Такой участок памяти PC величается переменной. Понятие переменной - главнейшее понятие алгоритмического языка. Переменные интегрированы в систему все пригодного исполнителя.
Глава 1. Понятие переменных и их использование.
Любой переменной присваивается имя. В рассмотренном образце применяются переменные " скорость ", " обороты мотора ", " предоставление ", " перегрузка ", " температура ", " обогащенность смеси ", " угол опережения зажигания " и иные. С любой переменной связан ее вид, т.е. большое количество значений, которое у нее есть возможность воспринимать.
Понятие переменной в программировании имеет собственную специфику. С любой переменной связываются 3 объекта:
- Тип этих - он обрисовывает большое количество вероятных значений переменной.
- Имя (идентификатор) переменной - последовательность латинских букв и цифр, начинающаяся с буквы (и не очень длинная); оно употребляется для обозначения текущего ценности подходящей переменной в тексте программы.
- Место в памяти, созданное для хранения текущего ценности переменной (размер его ориентируется типом переменной).
- Практически переменная - это прием организации хранения и доступа для 1-го объекта этого вида. В языке наличествуют средства
- создать (описать) переменную;
- задать (записать в память) значение переменной, поменять его и прочесть (использовать в вычислениях).
Оператор присваивания
Задание (изменение) текущего ценности переменной воплотит в жизнь оператор присваивания. Полный синтаксис:
<имя переменной >:= <выражение>
Например:
x:= 100.25;
n:= 3+5;
s:= 'ВАСЯ';
Выражение справа от символа:= может содержать фамилии переменных, знаки операций, скобки, вызовы интегрированных функций.
Например:
X: = (100.25+32.1*a)*SIN (alpha);
S: = 'ВАСЯ'+' '+last name
Оператор присваивания вычисляет значение выражения, подставляя взамен фамилий текущие ценности надлежащих переменных. После этого он записывает итог в переменную, чье имя предписано слева от := . Так, появляется такая последовательность операторов
x:= 23;
x:= x + 2;
присвоит переменной x значение 25.
Подраздел описания переменных
В разделе описания традиционно наличествует подраздел описания переменных.
Program example;
var
m,n,time : integer ;
a : real ;
s : string ;
ch : char ;
begin
...
end.
Здесь m, n, time, a, s, ch - личные номера (имена) переменных, integer, real, string, char -- наименования шаблонных типов этих.
Обычнейшие шаблонные типы данных
Вид этих (integer, real, string, char,... ) задает:
- множество значений, что имеют все шансы брать на себя переменные этого типа;
- способ организации хранения 1-го этого ценности в памяти;
- набор разрешенных деяний (операций, функций и т.д.) для значений этого типа.
integer - не чрезвычайно немалые (примерно до 215 ) целые количества. Для хранения такового количества в памяти применяется 2 б (16 битов).
Операции: +, - , *, div (деление нацело), mod (остаток от деления) отдают значение этого же вида. Например:
(3+7) div 4 = 2 17 mod 4 = 1
Операция обыкновенного деления / помимо прочего применима, но отдаёт количество иного вида -- real.
real - машинная имитация реальных количеств.
Операции: +, -, *, / (нет строительства в степень).
Ключевые интегрированные функции:
ABS(x) EXP(x)
ARCTAN(x) LN(x)
COS(x) SQR(x) - x*x
SIN(x) SQRT(x)
TRUNC(x) - (real --> integer)
char - знаки (буквы) из ASCII-таблицы; имеют номера (ASCII-коды) 0-255. Из числа них все есть строчные и заглавные буквы латинского и государственного (кириллица) алфавитов, знаки препинания, скобки, пробел и другие знаки (см. клавиатуру и ASCII таблицу). Наличествует 2 варианта написания символов:
• в одинарных кавычках: 'a', 'b', ' '(пробел), ','(запятая)...
• используя ASCII-коды символов: #97 (буква a лат.), #13 (Enter), #27 (Esc), ...
Операции:
+ - конкатенация (приписывание) знаков (результат имеет вид string): 'a' + 'b' = 'ab'.
Ключевые интегрированные функции:
Ord(x) - номер (ASCII-код) буквы;
Succ(x) - грядущая буква (в ASCII-таблице);
Pred(x) - предшествующая буква (в ASCII-таблице);
Chr(n) - буква номер n.
string - строчки (конечные последовательности) знаков. Точные строчки знаков (константы вида string) в тексте программы записываются в одинарных кавычках: 'abcd', 'Вася', 'Какой неплохой день! К ним относится помимо прочего бессодержательная строчка (последовательность длины 0), которая записывается.
Единственная операция над строчками знаков есть конкатенация (приписывание) строк. Она классифицируется +. Например: 'пар' + 'о' + 'воз' (будет 'паровоз').
s[i] обозначает i-тую букву строчки s:string.
Главные интегрированные функции:
length(s) - длина строчки s ;
copy(s,len,k) - подстрока длины len стоки s, начинающаяся с позиции k;
pos(s1,s) - выискивает 1-ое вхождение подстроки s1 в строчку s ; отдаёт номер 1 буквы.
Интегрированная процедура:
boolean - истинностные ценности TRUE и FALSE. Главные операции тут булевы связки not, end, or, что вполне возможно использовать не исключительно к истинностным значениям, но и к условиям. Например:
var
x:integer;
b,b1:boolean;
begin
...
x:=5;
b1:=FALSE;
b: = (x<1) or b1;
...
end .
С переменной вполне возможно скрупулезно исполнять 2 действия:
- прочитать текущее значение переменной;
- записать свежее значение в переменную либо, как заявляют специалисты, присвоить свежее значение переменной.
В алгоритмическом языке чтение ценности переменной производится вследствие применения ее фамилии во всяком выражении. Запись новенького ценности переменной производится при помощи так именуемого оператора присваивания. Он смотрится последующим образом:
имя переменной:= выражение;
Символ:= читается, как присвоить значение. Во почти всех языках взамен него применяется просто символ равенства:
фамилия переменной = выражение;
При исполнении оператора присваивания вначале рассчитывается значение выражения в правой части, далее оно записывается в переменную, фамилия которой предписано в левой части. Ветхое значение переменной при всем этом стирается. К примеру, скорость авто рассчитывается по числу импульсов от датчика скорости в единицу времени: датчик скорости высылает 6 импульсов на каждый пройденный метр.
скорость:= количество импульсов от датчика скорости /
(6 * интервал времени);
Переменная " количество импульсов от датчика скорости " на протяжении каждого интервала времени суммирует количество импульсов. В начале каждого интервала она обнуляется. Приобретенная в следствии скорость выражается в км/час. В случае если необходимо получить скорость в м/сек, тогда вдобавок производится последующее действие:
скорость:= скорость * 3600 / 1000;
В правой части употребляется старое значение данной переменной, вычисленное в м/сек. Потому что час имеет 3600 секунд, тогда при умножении на 3600 удается расстояние в метрах, проходимое за 1 час; после деления на 1000 удается расстояние в км. Вычисленное значение далее присваивается переменной " скорость ".
Суммируем произнесённое выше:
- универсальный исполнитель, либо комп, - это исполнитель, который может править иными исполнителями. Запись метода для исполнителя может включать команды, что он обязан передать подчиненным исполнителям, и команды, изменяющие внутреннее состояние самого все пригодного исполнителя;
- внутреннее состояние многоцелевого исполнителя ориентируется состоянием его памяти. Память - это материальный носитель (лента машины Тьюринга, ламповая либо ферритовая память первых PC, полупроводниковая память прогрессивных компьютеров), который хранит информацию. Данную информацию вполне возможно читать и перезаписывать;
- переменная - это область памяти многоцелевого исполнителя, сохраняющая порцию информации. Каждая переменная имеет фамилия и вид. Вид переменной ориентируется обилием всех значений, что у нее есть возможность брать на себя. Память многоцелевого исполнителя вполне возможно осматривать как набор переменных;
- с переменной вполне возможно исполнять 2 действия: прочесть ее текущее значение и записать в нее свежее значение (старое теряется). В алгоритмическом языке значение переменной читается, когда ее фамилия употребляется во всяком выражении, значение которого нужно определить. Для записи новенького ценности в переменную используется оператор присваивания, который имеет вид
- фамилия переменной:= выражение;
- При его исполнении поначалу рассчитывается значение выражения справа от символа присваивания:=, далее оно записывается в переменную. Выражение в правой части может включать фамилия переменной в левой части. В таком случае при вычислении выражения употребляется ветхое значение переменной.
Глава 2. Виды переменных.
2.1. Целочисленные переменные
Практически все целочисленные типы этих относятся к порядковым типам. Данные типы этих предполагают целые количества в определённом спектре. Точные названия целочисленных типов и спектры значений находятся в зависимости от точного языка программирования, от компилятора и от режима компиляции.
К примеру, вид этих Integer в Delphi имеет спектр -2147483648…2147483647, в тогда время как в Turbo Pascal вид этих Integer предполагает количества в спектре -35768…32767. В Free Pascal спектр значений вида Integer ориентируется подобранным режимом.