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

Здесь есть возможность читать онлайн «Стефан Дэвис - С++ для чайников .» весь текст электронной книги совершенно бесплатно (целиком полную версию без сокращений). В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Город: Москва, Год выпуска: 2007, ISBN: 2007, Издательство: Издательский дом Вильямс. Компьютерное издательство Диалектика, Жанр: Технические науки, Программирование, Программы, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

С++ для чайников .: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «С++ для чайников .»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

empty-line
1
empty-line
4

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

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

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

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

Проблемы могут появиться и при совершенно простых вычислениях, например:

float f1 = 10.0 ;

float f2 = 100 % 30 ;

f1 == f2 ; /* истинно ли это выражение? */

Теоретически f1 и f2 должны быть равны ( об операции деления по модулю можно прочитать в главе 3, "Выполнение математических операций"). Ошибка округления возникнуть вроде бы не должна. Однако и в этом нельзя быть уверенным: вам ведь неизвестно, как именно представляются числа с плавающей точкой внутри компьютера. Позвольте порекомендовать более безопасное сравнение:

float f1 = 10.0 ;

float f2 = f1 / 3 ;

float f3 = f2 * 3.0 ;

( f1 - f3 ) < 0.0001 && ( f3 - f1 ) < 0.0001 ;

Оно истинно в том случае, если разница между f1 и f2 меньше какого-то малого значения ( в нашем случае — 0.0001 ); при этом небольшие погрешности вычислений на правильность сравнения не повлияют.

Сокращённые вычисления в С++...59

Рассмотрим следующую конструкцию:

условие1 && условие2

Если условие1 ложно, то результат не будет истинным, независимо от истинности выражения условие2 . В схеме

условие1 || условие2

в случае истинности выражения условие1 неважно, какое значение принимает условие2 , — результат будет истинным.

Для экономии времени С++ вычисляет первым условие1 , и в случае, если оно ложно ( для оператора &&) или истинно ( для оператора ||), выражение условие2 не вычисляется и не анализируется.

_________________

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

►Бинарные числа в С++...60

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

Вряд ли вам придётся часто работать с переменными на битовом уровне поэтому - фото 77

«Вряд ли вам придётся часто работать с переменными на битовом уровне, поэтому остальную часть главы следует рассматривать как техническое отступление от основного повествования.»

[ Технические подробности ]

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

Десятичная система счисления...60

Числа, которыми мы чаще всего пользуемся, называются десятичными, или числами по основанию 10. В большинстве случаев программисты на С++ тоже используют десятичные переменные. Например, мы говорим, что значение переменной var равно 123.

Число 123 можно представить в виде 1*100+2*10+3*1 . При этом каждое из чисел 100, 10, 1 является степенью 10.

123 = 1 * 100 + 2 * 10 + 3 * 1 ,

что эквивалентно следующему:

123 = 1 * 10 2+ 2 * 10 1+ 3 * 10 0

Помните, что любое число в нулевой степени равняется 1.

Другие системы счисления...60

Использование числа 10 в качестве основания нашей системы счисления объясняется, по всей вероятности, тем, что издревле для подсчётов человек использовал пальцы рук. Учитывая особенности нашей анатомии, удобной альтернативной системой счисления можно было бы выбрать двадцатеричную [ 10 ]( т.е. с основанием 20 ).

Если бы наша вычислительная система была заимствована у собак, то она была бы восьмеричной ( ещё один "разряд", находящийся на задней части каждой лапы, не учитывается ). Эта система счисления работала бы не менее хорошо:

123 10= 1* 8 2+ 7* 8 1+ 3* 8 0= 173 8

Индексы 10 и 8 указывают систему счисления: 10 — десятичная, 8 — восьмеричная. Основанием системы счисления может быть любое положительное число.

Двоичная система счисления...60

У компьютеров, видимо, пальцев поменьше ( может быть, поэтому они такие недалёкие? ). Они предпочитают пользоваться двоичной системой счисления. Число 123 переводится в двоичную систему таким образом:

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

Интервал:

Закладка:

Сделать

Похожие книги на «С++ для чайников .»

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


Отзывы о книге «С++ для чайников .»

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

x