ИСХОДНЫЕ ТЕКСТЫ ПРИМЕРОВ

// Программа VAR.CPP, иллюстрирующая простые переменные

#include <iostream.h>

int main() {

int i, j = 2;

double x, y = 355.0 / 113;

i = 3 * j;

cout << "i = " << i << endl << "j = " << j << endl;

x = 2 * y; x = x * x;

cout << "y = " << y << endl << "x = " << x << endl; return 0; } /*

Результаты:

i = 6

j = 2

y = 3.141593

 

 


x = 39.4784 */ // Программа CONST1.CPP, иллюстрирующая константы

#include <iostream.h>

#define SEC_IN_MIN 60 #define MIN_IN_HOUR 60

int main() {

long hours, minutes, seconds;

long totalSec;

cout << "Введите часы: ";

cin >> hours;

cout << "Введите минуты: ";

cin >> minutes;

cout << "Введите секунды: ";

cin >> seconds;

totalSec = ((hours * MIN_IN_HOUR + minutes) * SEC_IN_MIN) + seconds;

cout << endl << totalSec << " секунд прошло с полуночи" << endl;

return 0; } /* Тест и результаты:

Введите часы: 10

Введите минуты: 0

Введите секунды: 0

36000 секунд прошло сполуночи */

// Программа CONST2.CPP, иллюстрирующая формальные константы

#include <iostream.h>

const int SEC_IN_MIN = 60; // глобальная константа

int main() { const int MIN_IN_HOUR = 60; // локальная константа

long hours, minutes, seconds; long totalSec;

cout << "Введите часы: "; cin >> hours;

cout << "Введите минуты: "; cin >> minutes;


 


cout << "Введите секунды: "; cin >> seconds;

totalSec = ((hours * MIN_IN_HOUR + minutes) * SEC_IN_MIN) + seconds;

cout << endl << endl << totalSec << " секунд прошло с полуночи" << endl;

return 0; } /* Тест и результаты:

Введите часы: 1

Введите минуты: 10

Введите секунды: 20

4220 секунд прошло с полуночи */

// Программа OPER1.CPP, иллюстрирующая простые математические операции #include <iostream.h>


«longl « endl; «long2 « endl; «long3 « endl; «long4 « endl; " «long5 « endl;

int main() {

int int1, int2;

long long1, long2, long3, long4, long5;

float x, y, real1, real2, real3, real4;

cout << endl << "Введите первое целое число: ";

cin >> int1;

cout << "Введите второе целое число: ";

cin >> int2;

cout << endl;

long1 = int1 + int2;

long2 = int1 - int2;

long3 = int1 * int2;

long4 = int1 / int2;

long5 = int1 % int2;

cout << int1 << " + " << int2 << "

cout << int1 << " - " << int2 << "

cout << int1 << " * " << int2 << "

cout << int1 << " / " << int2 << "

cout << int1 << " % " << int2 <<

cout << endl << endl;

cout << "Веедите первое вещественное число: ";

cin >> x;

cout << "Введите второе вещественное число: ";

cin >> y;

cout << endl;

real1 = x + y;

real2 = x - y;

real3 = x * y;

real4 = x / y;

cout << x << " + " << y << " = " << real1 << endl;



cout << x << " - " << y << " = " << real2 << endl;

cout << x << " * " << y << " = " << real3 << endl;

cout << x << " / " << y << " = " << real4 << endl;

cout << endl << endl;

return 0; } /* Тест и результаты:

Введите первое целое число: 10

Введите второе целое число: 5

10 + 5 = 15 10 - 5 = 5 10 * 5 = 50 10 / 5 = 2 10 % 5 = 0

Введите первое вещественное число: 1.25 Введите второе вещественное число: 2.58

1.25 + 2.58 = 3.83 1.25 - 2.58 = -1.33 1.25 * 2.58 = 3.225 1.25 / 2.58 = 0.484496

*/

//Демонстрация операций инкремента и декремента см. в программе OPER2.CPP

// Программа SIZEOF.CPP, которая возвращает размеры данных, используя // для этого операцию sizeof() с переменными и типами данных.

#include <iostream.h>

int main() {

short int aShort;

int anInt;

long aLong;

char aChar;

float aReal;

cout << "Таблица 1. Размеры памяти для переменных" << endl

<< endl;
cout << " Тип данных Используемая " << endl;
cout << " память (в байтах)" << endl;

cout << " ---------- " << endl;

cout << " short int " << sizeof(aShort) << endl;

cout << " integer " << sizeof(anInt) << endl;

cout << " long integer " << sizeof(aLong) << endl;

cout << " character " << sizeof(aChar) << endl;

cout << " float " << sizeof(aReal) << endl;



cout «endl «endl «endl;


cout << "Таблица 2. Размеры памяти для типов данных" << endl << endl;

cout«cout«cout«cout«cout«cout«cout«cout«

Тип данных Используемая" << endl; память (в байтах)" << endl;

" << endl;

short int integer long integer character float
cout «endl «endl «endl'

" << sizeof(short int) << endl; " << sizeof(int) << endl; " << sizeof(long) << endl; " << sizeof(char) << endl; << sizeof(float) << endl;


}


return 0;


/* Результаты:

Таблица 1. Размеры памяти для переменных" Тип данных Используемая память (в байтах)

 

short int
integer
long integer
character
float

Таблица 2. Размеры памяти для типов данных Тип данных Используемая память (в байтах)

 

short int
integer
long integer
character
float

*/

// Простая программа TYPECAST.CPP, демонстрирующая приведение типа

#include <iostream.h>

int main() {

short shortInt1, shortInt2;

unsigned short aByte;

int anInt;

long aLong;

char aChar;


float aReal;

// присваиваются значения

shortInt1 = 10; shortInt2 = 6;

// действия выполняются без приведения типа aByte = shortInt1 + shortInt2; anInt = shortInt1 - shortInt2; aLong = shortInt1 * shortInt2; aChar = aLong + 5; // автоматическое преобразование

// в символьный тип aReal = shortInt1 * shortInt2 + 0.5;

cout << "shortInt1 = " << shortInt1 << endl << "shortInt2 = " << shortInt2 << endl << "aByte = " << aByte << endl << "anInt = " << anInt << endl << "aLong = " << aLong << endl << "aChar is " << aChar << endl << "aReal = " << aReal << endl << endl << endl;

// дейтсвия выполняются с приведением типа aByte = (unsigned short) (shortInt1 + shortInt2);

anInt = (int) (shortInt1 - shortInt2); aLong = (long) (shortInt1 * shortInt2); aChar = (unsigned char) (aLong + 5); aReal = (float) (shortInt1 * shortInt2 + 0.5);

cout << "shortInt1 = " << shortInt1 << endl << "shortInt2 = " << shortInt2 << endl << "aByte = " << aByte << endl << "anInt = " << anInt << endl << "aLong = " << aLong << endl << "aChar is " << aChar << endl << "aReal = " << aReal << endl << endl << endl; return 0; }

/* Результаты: shortInt1 = 10 shortInt2 = 6 aByte = 16 anInt = 4 aLong = 60 aChar is A aReal = 60.5

shortInt1 = 10 shortInt2 = 6 aByte = 16 anInt = 4 aLong = 60 aChar is A


aReal = 60.5 */

/* *** ВОПРОСЫ И ОТВЕТЫ ***

Существуют ли особые соглашения о присвоении имен идентификаторам?

Существует несколько стилей, которые стали популярными в последние годы. Стиль, который используется в наших занятиях, требует начинать имя переменной с символа, набранного в нижнем регистре. Если идентифи­катор состоит из нескольких слов, как, например, numberOfElements, набирайте первый символ каждого последующего слова в верхнем реги­стре.

Как реагирует компилятор, если вы объявляете переменную, но никогда не присваиваете ей значения?

Компилятор выдает предупреждение, что на переменную нет ссылок.

Каково булево выражение для проверки того, что значение переменной i находится в заданном диапазоне значений (например, определяемом пере­менными lowVal и hiVal)?

Выражением, которое определяет, находится ли значение переменной i в некотором диапазоне, является (i >= lowVal && i <= hiVal).