Встроенные типы

Встроенные типы.

3. Элементы языка С++.

Функции математической библиотеки.

 

1. Назначение языка С++.

Язык С++ является универсальным языком программирования, в дополнение к которому разработан набор разнообразных библиотек. Он позволяет решить практически любую задачу программирования. Тем не менее, в силу разных причин для каких-то типов задач он используется чаще, а для каких-то – реже.

Разработчиком языка С++ является Бьерн Страуструп. В своей работе он опирался на опыт создателей языков Симула, Модула 2, абстрактных типов данных. Предшественник С++ – язык С с классами – появился в 1979 году, а в 1997 году был принят международный стандарт С++.

С++ широко используется в системном программировании. На нем можно писать высокоэффективные программы, в том числе операционные системы, драйверы и т.п. Язык С++ – один из основных языков разработки трансляторов.

Обработка сложных структур данных – текста, бизнес-информации, Internet-страниц и т.п. – одна из наиболее распространенных возможностей применения языка. В прикладном программировании, наверное, проще назвать те области, где язык С++ применяется мало. В целом язык Си++ в настоящее время является одним из наиболее распространенных языков программирования в мире.

Встроенные типы

Встроенные типы данных предопределены в языке. В таблице перечислены простейшие типы данных и приведены наиболее типичные диапазоны их значений.

Тип данных Обозначение Длина (в байтах) Диапазон значений
Символьные данные char от -128 до +127
Короткое целое число short от -32768 до +32767
Целое число int от – 2147483648 до + 2147483647
Длинное целое число long от – 2147483648 до + 2147483647
Вещественное число float от ±3.4e-38 до ±3.4e+38 (7 значащих цифр)
Вещественное число двойной точности double от ±1.7e-308 до ±1.7e+308 (15 значащих цифр)

3. Элементы языка С++

 

1. Буквы и цифры

- большие буквы латинского алфавита

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

- малые буквы латинского алфавита

a b c d e f g h i j k l m n o p q r s t u v w x y z

- десятичные цифры

0 1 2 3 4 5 6 7 8 9

 

2. Специальные символы

 

пробел ! " # % & ' ( ) * + , - . / : ; < = > ? [ \ ] ^ _ { | } ~

 

3.Комментарии

 

Комментарий – это последовательность символов, которая игнорируется компилятором языка C++. Комментарий имеет следующий вид: /*<символы>*/. Комментарии могут занимать несколько строк, но не могут быть вложенными. Кроме того, часть строки, следующая за символами //, также рассматривается как комментарий.

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

  • содержателен;
  • имеет какое-то отношение к программе;
  • не устарел.

Удачно подобранный и написанный набор комментариев является существенной частью хорошей программы. Написание «правильных» комментариев может оказаться не менее сложной задачей, чем написание самой программы.

 

4. Имена переменных

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

Идентификатор – это последовательность знаков, начинающаяся с буквы или знака подчеркивания. В идентификаторах можно использовать заглавные и строчные латинские буквы, цифры и знак подчеркивания. Длина идентификаторов произвольная.

Примеры правильных идентификаторов: abc, A12, NamePerson, BYTES_А.

abc и Abc – два разных идентификатора, т.е. заглавные и строчные буквы различаются.

Примеры неправильных идентификаторов: 12X, a-b.

Ряд слов в языке С++ имеет особое значение и не может использоваться в качестве идентификаторов. Такие зарезервированные слова называются ключевыми. Пример: namespace, for, false, double и т. д.

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

int x;

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

 

5.Константы

Константами в языке С++ могут быть числа (целые и вещественные), символы и строки символов, которые допустимо использовать в программе в смысле их значений. Значение констант не может быть изменено в процессе работы программы. Далеко не всегда удобно записывать константы в тексте программы явно. Гораздо чаще используются символические константы.

Пример

const int b=32;

После этого имя b можно будет использовать вместо целого числа 32. Преимущества такого подхода очевидны.

 

6. Операции и выражения

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

 

- арифметические операции

+ сложение- вычитание* умножение/ деление

Результат арифм. операции – число, по типу соответствующее большему по разрядности операнду. Например, сложение чисел типа short и long в результате дает число типа long.

 

Операция нахождения остатка от деления одного целого числа на другое. Тип результата – целое число.

% остаток

 

Операция "минус" – это унарная операция, при которой знак числа изменяется на противоположный. Она применима к любым числам со знаком. Операция "плюс" существует для симметрии. Она ничего не делает, т.е. примененная к целому числу, его же и выдает. - минус + плюс

 

Операции ++ и -- инкрементируют (увеличивают на 1) и декрементируют (уменьшают на 1) свой операнд. Операнд должен иметь целый, вещественный тип или быть указателем. Операции инкремента и декремента могут записываться как перед своим операндом (префиксная форма записи), так и после него (постфиксная форма записи). При префиксной форме записи операнд сначала инкрементируется или декрементируется, а затем его новое значение участвует в дальнейшем вычислении выражения, содержащего данную операцию. При постфиксной форме записи операнд инкрементируется или декрементируется лишь после того, как его старое значение участвует в вычислении выражения. Таким образом, результатом операций инкремента и декремента является либо новое, либо старое значение операнда. Например, если переменная i = 0, то выражение a[++i] = 1 меняет элемент a[1], а выражение a[i++] = 1 меняет элемент a[0]. В обоих случая переменная i получает новое значение, равное 1. ++ увеличить на единицу -- уменьшить на единицу

- операции сравнения

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

Сравнивать можно операнды любого типа, но они должны быть оба одного и того же встроенного типа. Результат – логическое значение true или false.

- логические операции

&& логическое И|| логическое ИЛИ! логическое НЕ

В качестве операндов выступают логические значения, результат – тоже логическое значение true или false .

- операции присваивания

= присваивание

Присвоить значение правого операнда левому. Результат операции присваивания – это значение правого операнда.

+=, -=, *=, /=, %= выполнить операцию и присвоить

Выполнить соответствующую операцию с левым операндом и правым операндом и присвоить результат левому операнду. Типы операндов должны быть такими, что, во-первых, для них должна быть определена соответствующая арифметическая операция, а во-вторых, результат может быть присвоен левому операнду.

Порядок вычисления выражений

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

Уменьшение приоритета Тип операции Операторы
Разрешение области видимости ::
другие [ ], ( ), . “точка”
унарные !
арифметические *, /, %
арифметические +, -,
сравнение >, <, >=, <=
сравнение ==, !=
логические &&, ||
присваивания =, *=, /=, %=, +=, -=
последовательность “,” (запятая)

 

Поддержка русского языка.Консольные приложения не поддерживают русский язык. Чтобы это исправить, нужна функция setlocale(LC_CTYPE,"Russian");

  1. Функции математической библиотеки.

Функции для расчета математических выражений находятся в библиотеке math (подключение библиотеки: #include ”math.h”). Все аргументы в тригонометрических функциях задаются в радианах. Параметры и аргументы всех остальных функций имеют тип double (кроме abs(x)).

Математическая функция Функция библиотеки math.h Описание
аbs(x) Вычисление абсолютного значения (только для целых чисел!)
fаbs(x) Вычисление абсолютного значения x
cos(x) Вычисление косинуса x
sin(x) Вычисление синуса x
tan(x) Вычисление тангенса x
acos(x) Вычисление значения арккосинуса x
asin(x) Вычисление значения арксинуса x
atan(x) Вычисление значения арктангенса x
atan2(x,y) Вычисление значения арктангенса двух аргументов x и y
Округление к большему ceil(x) Функция возвращает действительное значение, соответствующее наименьшему целому числу, которое больше или равно x
sinh(x) Вычисление синуса гиперболического x  
cosh(x) Вычисление косинуса гиперболического x
tanh(x) Вычисление тангенса гиперболического x  
exp(x) Вычисление экспоненты числа x
Округление к меньшему floor(x) Функция возвращает действительное зна чение, соответствующее наибольшему це лому числу, которое меньше или равно x
Остаток от деления x на y fmod(x,y) Функция возвращает действительное значение, соответствующее остатку от целочисленного деления x на y
log(x) Вычисление натурального логарифма x
log10(x) Вычисление десятичного логарифма x
pow(x, y) Возведение x в степень y
sqrt(x) Вычисление квадратного корня x

 


Пример: написать программу для вычисления косинуса угла, заданного в радианах.

 

 

Вычислить

Дано трехзначное целое число. Определить сумму его цифр.

#include <iostream>

using namespace std;

void main()

{

int a,a1,a2,a3;

cout<<"Vvedite 3-x znachnoe chislo \n";

cin>>a;

a1=a/100; // sotni

a2=a/10%10; // desyatki

a3=a%10; // edinici

cout<<"\n "<<a1<<" "<<a2<<" "<<a3;

cout<<"\n Symma ="<<a1+a2+a3<<endl;

system("pause");

}


<== предыдущая лекция | следующая лекция ==>
Рекомендации по составлению компьютерной презентации (КП). | Понятие финансовой (бухгалтерской) отчетности




Дата добавления: 2015-09-11; просмотров: 1008;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.024 сек.