Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Программирование в среде ВС++.doc
Скачиваний:
10
Добавлен:
09.11.2018
Размер:
3.52 Mб
Скачать

1.6. Помощь справочной службы

  1. Вызовите в окно редактора программу Program1. Установите курсор на слово int и введите команду Ctrl+F1. Появится окно Help с разделом int (keyword) (ключевое слово int). Запомните диапазон данных типа int. Клавишей Esc вернитесь в окно редактора. Вновь получите справку о целых типах, введя команду Alt+F1.

  2. Выполните прогон программы с данными 10, 20 и 100. Результаты будут иметь вид: x + y + z = 1030 pr = 3392. Значение pr неверное, так как значение 200 000 не входит в диапазон данных типа int! Найдите справку по диапазонам значений числовых типов данных.

  3. Наберите в свободном месте окна слово double и введите команду Ctrl+F1. В окне Help Ознакомьтесь с вещественным типом, вернитесь в окно редактора и удалите слово double. Повторите поиск справки для слова sin. Ознакомьтесь с информацией о функции sin(x) библиотеки математики.

  4. В нижней части окна Help выполните двойной щелчок на ссылке sin example. Скопируйте программу тестирования функции sin(x) в новое окно редактора: выделить текст программы -> cкопировать его в буфер обмена кл_Ctrl + Ins ->открыть новое окно редактора М_File -> New -> и вставить программу в окно кл_Shift + Ins.

  5. Выполните прогон программы для sin(x) с разными значениями аргумента х в радианах.

2. ЛЕКСИЧЕСКИЕ СОГЛАШЕНИЯ В С++

ЛЕКСЕМЫ

Лексема – одна из смысловых единиц во входном тексте для компилятора. Имеется пять видов лексем: идентификаторы, ключевые слова, константы, операции и прочие разделители. Для разделения лексем используются пробел, символы новой строки, новой страницы, горизонтальной и вертикальной табуляции и комментарии. Символы лексемы нельзя разделять пробелами!

ИДЕНТИФИКАТОРЫ

Идентификатор – это последовательность букв и цифр произвольной длины. Первая литера должна быть буквой: _(подчерк) считается буквой. Различаются буквы верхнего и нижнего регистров. Все литеры значимы.

КЛЮЧЕВЫЕ СЛОВА

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

asm continue float new signed try auto default for operator sizeof typedef break delete friend private static union case do goto protected struct unsigned catch double if public switch virtual char else inline register template void class enum int return this volatile const extern long short throw while

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

Представление программы на языке С++, соответствующее стандарту ASCII, для обозначения операций и в качестве знаков пунктуации используют следующие литеры:

! % ^ & * ( ) – + = { } | ~ [ ] \ ` ; : “ < > ? , . /

Операции обозначаются следующими комбинациями литер:

–> ++ – – . * –> * + – / << >> <= >= = = != && ||

*= /= %= += – = <<= >>= &= ^= \= ::

Лексемы # и ## обрабатывает препроцессор – программа предварительной обработки кода компилируемой программы.

КОНСТАНТЫ

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

Таблица 3. Примеры констант

Значение

Тип

Запись в Си, С++

-127

0,0345

%

Borland

Целый

Вещественный

Символьный

Строковый

-127

0.0345, 3.45e-2, 0.345E-1

`%`

“Borland”

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

Для использования таких символов в языках Си и С++ есть управляющие константы (символы), которые представлены в табл. 4.

Таблица 4. Управляющие символы

Символ

Значение

\b

\f

\n

\r

\t

\v

\\

\?

\`

\”

\0

\N

\xN

\?

Сигнал (звонок)

BS, забой, возврат

Новая страница, перевод страницы

Новая строка, перевод строки

Возврат каретки

Горизонтальная табуляция

Вертикальная табуляция

Символ обратный слеш

Знак вопроса

Апостроф

Двойная кавычка

Нулевой символ, нулевой байт

Восьмеричная константа символа

Шестнадцатеричная константа символа

Знак вопроса

3. ОСНОВНЫЕ ТИПЫ И ОПЕРАЦИИ

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

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

Тип Размер(байты) Диапазон значений

char 1 от -128 до 127

int 2 от -32768 до 32767

unsigned 2 от 0 до 65535

long 4 от -2147483648 до 2147483647

float 4 от -3.4е-38 до 3.4е+38

double 8 от 1.7е-308 до 1.7е+308

АРИФМЕТИЧЕСКИЕ ОПЕРАЦИИ

К арифметическим операциям языка С++ относятся:

- вычитание;

+ сложение;

* умножение;

/ деление;

% остаток от целочисленного деления;

++ увеличение на единицу;

-- уменьшение на единицу.

Старшинство операций: (++, --), унарный минус, (*, /, %), (+,-). Операции в скобках, одинаковые по старшинству, выполняются слева направо.

ОПЕРАЦИИ ОТНОШЕНИЯ И ЛОГИЧЕСКИЕ ОПЕРАЦИИ

Операции отношения используются для сравнения:

< меньше > больше

<= меньше или равно >= больше или равно

= = равно != не равно.

Логические операции по старшинству: ! не (NOT), && и (AND), || или (OR).

ОПЕРАЦИИ ПРИСВАИВАНИЯ

Обозначается знаком =. В языке С++ имеется сложная операция присваивания, которая обозначается двумя или тремя символами: первый символ (или два символа) – знак операции, последний символ – знак =. В результате выполнения такой операции над переменной, стоящей слева, выполняется операция перед знаком = с операндом, располагающимся справа. Например, выражение n + = 5; аналогично по результату выполнения выражению n = n + 5;

ПОРАЗРЯДНЫЕ ОПЕРАЦИИ

Можно проводить с любыми целочисленными переменными и константами. Результатом побитовой операции будет целочисленное значение. Поразрядными операциями являются: & (AND), | (OR), ^ (XOR), ~ (NOT), << (сдвиг влево), >> (сдвиг вправо).

Операции AND, OR, NOT, и XOR аналогичны соответствующим логическим операциям, только в этом случае сравниваются не значения выражений, а значения каждой соответствующей пары битов. Результат этих операций содержит биты-результаты всех пар битов операндов (см. приложение ???).

БИБЛИОТЕКА ФУНКЦИЙ

Система Borland C++ обладает богатой библиотекой функций. Для доступа к тому или иному разделу библиотеки нужно указать в программе директивой препроцессора #include соответствующий заголовочный файл. Заголовочные файлы содержат определения, используемые компилятором для операций различных типов. Например, файл math.h содержит прототипы математических функций, определения констант и другое. Заголовочные файлы, подобно программам на С++, представляют собой файлы в формате ASCII, содержимое которых можно просмотреть или напечатать.

При выполнении практикума наиболее часто будут использоваться функции, приведённые в табл. 5.

Таблица 5. Функции библиотеки математики

Функция

Пояснения

int abs(int x)

double acos(double x)

double asin(double x)

double atan(double x)

double cos(double x)

double exp(double x)

double fabs(double x)

long labs(long x)

double log(double x)

double log10(double x)

double pow(double x, double y)

double sin(double x)

double sqrt(double x)

double tan(double x)

абсолютная величина (тип int)

арккосинус

арксинус

арктангенс

косинус

экспонента

абсолютная величина (тип double)

абсолютная величина (тип long)

натуральный логарифм

десятичный логарифм

x в степени y

синус

корень квадратный

тангенс

Примечание: аргумент тригонометрических функций в радианах!

ПРИЛОЖЕНИЕ 1

Примеры программ для практикума