Стефан Дэвис - С++ для чайников .

Тут можно читать онлайн Стефан Дэвис - С++ для чайников . - бесплатно полную версию книги (целиком) без сокращений. Жанр: sci_tech, издательство Издательский дом Вильямс. Компьютерное издательство Диалектика, год 2007. Здесь Вы можете читать полную версию (весь текст) онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    С++ для чайников .
  • Автор:
  • Жанр:
  • Издательство:
    Издательский дом Вильямс. Компьютерное издательство Диалектика
  • Год:
    2007
  • Город:
    Москва
  • ISBN:
    0-7645-6852-3, 978-5-8459-0723-3
  • Рейтинг:
    4/5. Голосов: 11
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 80
    • 1
    • 2
    • 3
    • 4
    • 5

Стефан Дэвис - С++ для чайников . краткое содержание

С++ для чайников . - описание и краткое содержание, автор Стефан Дэвис, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru
empty-line
1
empty-line
4

С++ для чайников . - читать онлайн бесплатно полную версию (весь текст целиком)

С++ для чайников . - читать книгу онлайн бесплатно, автор Стефан Дэвис
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Так же широко используются операторы &&( И ) и ||( ИЛИ ). Эти операторы обычно сочетаются с другими логическими операторами:

/* истинно, если n2 больше n1 и меньше n3 */

( n1 < n2 ) && ( n2 < n3 ) ;

В качестве ремарки: оператор "больше или равно" можно определить как [ 8 ]

n1 <= n2 эквивалентно ( n1 < n2 ) || ( n1 == n2 )

______________

8В качестве ещё одной ремарки: операторы сравнения вообще достаточно взаимозаменяемы. Так, например, ( a == b ) эквивалентно ( ! ( a>b ) && ! ( a . — Прим. ред.

_________________

56 стр. Часть 1. Первое знакомство с С++

Хранение логических значений...57

Результат логической операции может быть присвоен переменной типа bool :

int n1 = 1 ;

int n2 = 2 ;

bool b ;

b = ( n1 == n2 ) ;

Это выражение показывает разницу между операторами присвоения и сравнения. Его можно описать следующими словами: "Сравни содержимое переменных n1 и n2 и сохрани результат сравнения в переменной b ".

Оператор присвоения имеет наиболее низкий приоритет поэтому оператор - фото 72

«Оператор присвоения имеет наиболее низкий приоритет, поэтому оператор сравнения будет выполнен до присвоения. Скобки в этой ситуации излишни, и выражениеb = n1 == n2 эквивалентноb = ( n1 == n2 ) . Обратите также внимание на различие операторов присвоения и сравнения.»

[ Советы ]

Вот пример программы, демонстрирующей использование переменной типа bool :

/* BoolTest — сравнение данных, вводимых с клавиатуры, и сохранение результата в переменной типа bool */

#include

#include

#include

using namespace std ;

int main ( int nNumberofArgs , char* pszArgs[ ] )

{

setlocale ( LC_ALL , ".1251" ) ; /* печать кириллицы */

cout << "Использование переменной типа bool\n" ;

/* Устанавливаем текстовый формат для вывода логических значений */

cout.setf( cout.boolalpha ) ;

/* Инициализируем аргументы */

int nArg1 ;

cout << "Введите значение 1: " ;

cin >> nArg1 ;

int nArg2 ;

cout << " Введите значение 2: " ;

cin >> nArg2 ;

bool b ;

b = nArg1 == nArg2 ;

cout << "Значение " << nArg1

<< " == " << nArg2

<< " равно " << b

<< endl ;

/* Пауза для того, чтобы посмотреть на результат работы программы */

system( "PAUSE" ) ;

return 0 ;

}

Инструкция cout.setf( cout.boolalpha ) ; обеспечивает вывод логического значения в виде строки " true " или " false ", а не в виде 1 или 0 , как принято по умолчанию.

_________________

57 стр. Глава 4. Выполнение логических операций

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

Использование переменной типа bool Введите значение 1 5 Введите - фото 73

Использование переменной типа bool

Введите значение 1: 5

Введите значение 2: 5

Значение 5 == 5 равно true

Press any key to continue...

Специальное значениеendl вставляет символ перехода на новую строку Разница - фото 74

«Специальное значениеendl вставляет символ перехода на новую строку. Разница междуendl и описанным в главе 2, "Премудрости объявления переменных", символом'\n' поясняется в главе 24, "Использование потоков ввода-вывода".»

[ Советы ]

Использование целых переменных в качестве логических...58

С++ не всегда имел тип bool . Ранее для хранения логических значений в С++ использовался тип int . Значение 0 рассматривалось как false , а все остальные — как true . Все логические операторы генерировали целочисленные значения 0 и 1, соответствующие значениям false и true .

В С++ осталась высокая степень совместимости типов bool и int , обеспечивающая поддержку старых программ. Например, если в только что рассмотренной программе удалить инструкцию cout.setf( cout.boolalpha ) ; , вывод программы будет следующим:

Использование переменной типа bool Введите значение 1 5 Введите - фото 75

Использование переменной типа bool

Введите значение 1: 5

Введите значение 2: 5

Значение 5 == 5 равно 1

Press any key to continue...

Переменные типов bool и int могут вместе использоваться в выражениях языка. Например, следующий код совершенно корректен:

int n1 = 1 ;

int n2 = 2 ;

int n ;

n = ( n1 == n2 ) ;

Тем не менее в своих программах желательно использовать для хранения логических значений переменные специально предназначенного для этого типа bool .

Логические операции и действительные переменные...58

Переменные с плавающей точкой, как уже отмечалось, не могут использоваться для перечисления. Вы можете сказать: первый, второй, третий, четвёртый и т.д., так как соотношения между 1, 2, 3 абсолютно точно известны. Но нет никакого смысла говорить о номере 4.535887 в последовательности ( такой способ нумерации возможен лишь как обозначение чего-то между четвёртым и пятым, но не действительного значения номера, так как в любом сколь угодно малом отрезке их несчётное [ 9 ] множество ).

Тип float , представляющий в С++ действительные числа, не является перечислимым. Кроме того, в отличие от действительных чисел, числа с плавающей точкой имеют ограниченное количество разрядов, поэтому при использовании операторов сравнения с числами с плавающей точкой необходимо соблюдать осторожность. Рассмотрим следующий пример:

float f1 = 10.0 ;

float f2 = f1 / 3 ;

f1 == ( f2 * 3.0 ) ; /* Равны ли эти значения? */

__________________

9Более того, в данном случае это не красивое слово, а строгий математический термин. — Прим. ред.

_________________

58 стр. Часть 1. Первое знакомство с С++

Сравнивая начальное и полученное значения, мы не обязательно получим равенство. Действительные переменные, с которыми работает компьютер, не могут содержать бесконечное число значимых разрядов. Поэтому f2 равняется, например, 3.3333, а не 3 1/ 3. В отличие от математики, в компьютере число троек после точки ограничено. Умножив 3.3333 на 3, вы, вероятно, получите не 10.0, а 9.9999. Такой маленькой разницей может пренебречь человек, но не компьютер. Эта машина понимает под равенством исключительно точное равенство значений.

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


Стефан Дэвис читать все книги автора по порядку

Стефан Дэвис - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




С++ для чайников . отзывы


Отзывы читателей о книге С++ для чайников ., автор: Стефан Дэвис. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x