Программирование >>  Элементы языков с и с++ 

1 ... 6 7 8 [ 9 ] 10 11 12 ... 200


Имена и типы переменных

Поясним суть программы. Строка:

int lower,upper,step;

ЭТО так называемые объявления переменных. lower, upper, step - это имена переменных.

Компилятор соотнесет с этими именами определенные адреса в памяти и, начиная с этих адресов, выделит участки памяти (в байтах) в соответствии с тем, какого типа объявлены переменные. В нашем случае тип переменных, заданный при их объявлении, - int (от англ. integer - целое число). Это означает, что все переменные имеют вид целое число со знаком и что под каждое значение числа, которое будет записано на участках lower, upper или step, отведено определенное количество байтов памяти (в данном случае 4 байта).

Рассмотрим, как определяется количество памяти, отводимое под переменную, в данной среде программирования.

Тип данных int занимает место большее или равное, чем тип short int, и меньшее или равное, чем тип long (т. е. мы видим, что данные этого типа получаются как бы безразмерными в заданных границах).

Объекты типа int могут объявляться как signed int (целое со знаком), так и unsigned int (целое без знака) (signed int - это синоним int).

В дополнение к int существует тип данного, названный intn. Здесь п задает размер данного. Значения п могут быть равными 8, 16, 32 или 64.

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

Имена переменным надо давать осмысленно, чтобы облегчить их запоминание (еще говорят, что переменным надо давать мнемонические обозначения). Имена должны отражать характер содержания переменной. В нашем случае lower, upper И step именуют, соответственно, нижнюю и верхнюю границы таблицы температур по Фаренгейту и шаг этой таблицы. Нижняя граница таблицы (lower) равна О, верхняя (upper) равна 300, а шаг таблицы (т. е. разность между соседними значениями - step) равен 20.



Оператор While

Чтобы вычислить температуру по Цельсию для каждого значения шкалы по Фаренгейту, не требуется писать программный код для каждой точки шкалы. В этом случае не хватило бы никакой памяти, поскольку шкала может содержать миллиарды точек. В подобных ситуациях выходят из положения так: делают вычисления для одной точки, используя некоторый параметр, а потом, изменяя этот параметр, заставляют участок расчета снова выполняться

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

Объявление: float fahr,cels;- это описание переменных с именами fahr, eels, ho тип этих переменных уже иной. Эти переменные - не целые числа, а так называемые числа с плавающей точкой. Полочки в памяти, обозначаемые этими переменными, могут хранить любые вещественные числа, а не только целые.

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

Следовательно, когда мы пишем с = а + ь, это означает, что одна часть данных будет извлечена с полочки а, другая часть данных - с полочки ь, затем произойдет их суммирование, а результат будет положен (записан) на полочку с.

Знак = означает присвоить , это не знак равенства, а знак операции пересылки. Знак равенства выглядит иначе (о знаке равенства см. в главе 2). Присваивать некоторой переменной можно не только значение с какой-либо полочки , т. е. значение другой переменной, но и просто числа (например, а = 10). В этом случае компилятор просто положит на полочку а число 10.



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

Повторение расчетов называют циклом расчетов. Для организации цик;юв существуют специальные операторы цикла, которые охватывают участок расчета и прокручивают его необходимое количество раз. Одним из таких операторов в языке С является оператор while (до тех пор, пока). Тело этого оператора ограничивается парой фигурных скобок: начинается с открывающей фигурной скобки, а заканчивается закрывающей фигурной скобкой. В это-то тело и помещается прокручиваемый участок. А сколько раз прокручивать - определяется условием окончания цикла, которое задается в заголовочной части оператора. Вид оператора while таков: while(условие окончания цикла) {

Тело

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

Приведем пример истинности условия. Условие может быть записано в общем случае в виде некоторого выражения (переменные, соединенные между собой знаками операций). Например, а < ь (о меньше V). Значение переменной а- это то, что лежит на полочке с именем а , а значение переменной b - то, что лежит на полочке ь . Если значение переменной а действительно меньше значения ь, то выражение считается истинным, в противном случае - ложным.

Внимательно посмотрев на оператор while, можно сделать вывод: для завершения цикла (для этого условие окончания цикла должно стать ложным) надо, чтобы само условие окончания изменялось в теле оператора по мере выполнения цикла и в нужный момент стало бы ложным. Теперь рассмотрим, как это происходит в нашей программе.

Сначала определяются начальные значения переменных: lower, upper, step. Параметром, задающим цикл, у нас является переменная fahr. Ее значение будет меняться от цикла к циклу на величину шага шкалы по Фаренгейту, начиная от минимального, когда fahr = lower (мы присваиваем ей значение переменной lower, которая ранее получила значение нуля - начала шкалы по Фаренгейту), и заканчивая максимальным, когда значение переменной



1 ... 6 7 8 [ 9 ] 10 11 12 ... 200

© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика