ПЕРЕМЕННЫЕ И ТИПЫ ДАННЫХ

 

Скажите, Вы любите порядок в своем компьютере? Чтобы музыка была систематизирована по альбомам и исполнителям, чтобы документы были в каталогах, а фотографии имели хронологический порядок? Порядок все любят! Но больше всего его любит сам компьютер. Для хранения и обработки данных в памяти компьютера используют переменные разных типов.
    Один мой знакомый в своей книге «Дизайн и эволюция языка С++» пришёл к выводу, что система типов в языке Pascal не просто бесполезна – это смирительная рубашка, которая создаёт больше проблем, нежели решает, заставляя жертвовать чистотой дизайна ради удовлетворения причуд компилятора.
Хотите узнать, почему он так решил?

 

переменные - это данные, которые могут меняться в процессе выполнения программы. Обращаться к переменным нужно по имени, тогда программа понимает какую переменную нужно вызвать, чтобы взять из нее или положить в нее данные для оперативного хранения.​
Программы оперируют с различными данными, которые могут быть простыми и структурированными.
Простые данные - это целые и вещественные числа, символы и указатели (адреса объектов в памяти). Целые числа не имеют, а вещественные имеют дробную часть.
Структурированные данные - это массивы и структуры; они будут рассмотрены ниже.
Переменные в программировании должны быть разные по типу, потому что для их обработки используются разные методы. Символьные, Целые, Вещественные (дробные) величины обрабатываются по разному. И мы должны научиться их правильно систематизировать и использовать.
Есть нИзображениеекоторые негласные правила, т.е исполнения который является хорошим тоном, но делать это не обязательно:
  1. каждое объявление переменных нового типа начинается с новой строки;
  2. из названия переменной должно быть понятно зачем она и что в ней будет храниться (хотя иногда из-за таких вот информативных названий скорость написания кода падает, т.к некоторых заносит и они называют переменные целыми предложениями);
 3. поэтому появляется правило: название переменной не должно быть слишком длинным;
  4. после объявления переменной очень желательно в комментариях пометить зачем она;

Изображение  5. необходимо разделять имена переменных пробелами. 
В языке возможны глобальные и локальные объекты. Первые определяются вне функций и, следовательно, доступны для любой из них. Локальные объекты по отношению к функциям являются внутренними. Они начинают существовать, при входе в функцию и уничтожаются после выхода из нее. Ниже показана структура программы на Си и возможные места в программе, где определяются глобальные и локальные объекты.

int a; /* Определение глобальной переменной */
int function (int b, char c); /* Объявление функции (т.е. описание ее заголовка)*/
void main (void)
{ //Тело программы
int d, e; //Определение локальных переменных
float f; //Определение локальной переменной
...
}
int function (int b, char c) /* Определение функции и формальных параметров (по существу - локальных переменных) b и c */
{ //Тело функции
char g; //Определение локальной переменной
...
}
В языке C++ также существуют перечислимый тип – enum, который является подмножеством целого типа, и пустой тип – void, который имеет специальное назначение. Он используется для объявления функций, которые не возвращают никакого значения, а также для объявления указателей на значение типа void. Такие указатели могут быть преобразованы к указателям на любой другой тип.
В языке С++ можно объявлять структуры и так называемые объединения.
​В языке C++ нет специальных типов для массивов и строк ВАЖНО!!! В языке Паскаль для объявления постоянных величин потребуется служебное слово const, а для переменных var​​ для пользовательских типов type, которые должны распологаться в блоке объявления данных, т.е между словами Program и BEGIN
Обычно программа на языке паскаль состоит из 4 частей:
  • Объявление данных
  • Ввод исходных данных
  • Обработка данных
  • Вывод результатов

Изображение

Изображение

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ПРИМЕРЫИзображение

Оператор объявления переменных имеет следующий синтаксис: тип имя1[,имя2[,...]];
​Примеры:
 int a, b, c;
 double x, y;
 char ch;
Переменные в языке Си могут быть инициализированы при их определении: int a = 25, h = 6; char g = 'Q', k = 'm'; float r = 1.89; long double n = r*123; 
Оператор объявления переменных с инициализацией имеет следующий синтаксис: тип имя1[=значение1][, имя2[=значение2][,...]];
Пример:
 int a=26, b=032, c=0x1A;
 double x=2.5e2,y=0x1.ffe-3;
 char ch=’Z’;
Константы в С++ 
В языке С++присутствует три вида констант:
  1. целочисленные,
  2. вещественные,
  3. символьные.
  В языке СИ можно также создавать переменные, имеющие константное значение (их значение нельзя изменить). Объявление таких «переменных» имеет следующий синтаксис:
const тип имя1=значение1[,имя2=значение2[,...]];
Пример:
  const unsigned int x=80, y=25;
  const double pi=3.1415;
Оператор создания типов данных в СИ. Оператор typedef используется для создания пользовательских типов данных, синтаксис его использования:typedef имя_старого_типа имя_нового_типа;
​Пример:
  typedef unsigned int word;
Функция для определения размера типа, или переменной какого-либо типа: sizeof, она возвращает количество занимаемых байт в памяти. Пример:
  sizeof(int) //вернет 4
  sizeof(char) //результат 1
  sizeof(double) // вернет 8

 
ВАЖНО!!! Я думаю, что нет смысла пока набирать эти примеры, ведь все равно мы ничего не увидим на экране. Объявление данных - это работа с памятью компьютера и подготовка его к вводу, выводу и обработке данных.
Для языка программирования Паскаль в имени переменной или константы можно использовать буквы латинского алфавита и цифры (первым символом должна быть буква);
Инструкция объявления констант выглядит так:
ИмяКонстанты = значение константы;
Пример:
const
min=1; {минимальное значение}
var
Инструкция объявления переменных выглядит так:
ИмяПеременной: тип;
k1: integer; {количество тетрадей}
k2: byte; {количество карандашей}
c1: real; {цена одной тетради}
st: string; {Предложение}
fam: string[30]; {Фамилия}
da1: boolean; {Согласие}
sim: char; {Символ}
fa: text; {Текстовый файл}
Инструкция объявления переменных интервального типа помещается в двух разделах type, var и выглядит так:
type
<имя типа>=(<константа1> ..<константа2>);
var
<идентификатор, …>: <имя типа>;

Пример:
type
days=1..31 ; {дни месяца}
var
rabotday: days; {рабочие дни}
vihodday: days; {выходные дни}
Инструкция объявления переменных перечисляемого типа помещается в двух разделах type, var и выглядит так:
type
<имя типа&g>