Форум программистов, компьютерный форум, киберфорум
Наши страницы

Зачем нужные поразрядные операции. Книга Павловская, Щупак - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ проблемы с памятью.... http://www.cyberforum.ru/cpp-beginners/thread47753.html
с алгоритмом вроде все нормально но вот происходит такая вещи при определенном действии выдается сообщение которое на скриншоте.... потом высвечивается вот эта строка int Put_Reis(FILE *f_reis, MAP...
C++ Матрица.Поиск точки У меня есть матрица 25 х 80.Есть функция,которая принимает ссылку на матрицу и текущее расположение(координаты точки). Мне нужно найти данную точку(т.е. отдельный класс создан). Обзор видимости 5... http://www.cyberforum.ru/cpp-beginners/thread47713.html
C++ Перегрузка + для строк
есть задача перегрузить = и + таким образом чтобы: строка1=срока2+строка3 с = проблем нет. а вот при перегрузке + выдает ошибку при доступе к закрытым данным //STRING2.H #ifndef STRING2_H...
Как подключить к проекту новый файл с функцией C++
Есть работающий проект на C++ (dll) Хочу в Visual Studio 2008 создать в проекте отдельный файл и в этом файле создать свою функцию которую можно было бы вызывать из существующих файлов Я создал в...
C++ Выход по ESC http://www.cyberforum.ru/cpp-beginners/thread47691.html
Приветствую вас уважаемые "чатлане"! .Пишет вам "пацак". Я начал с Borland C++ 3.1. Наверное все очень просто на самом деле, но как и у всех начинающих ...Есть инструкция - вывод символа на экран и...
C++ C++ не могу в нём разобраться (заход 2) Спасибо что помогли мне я думаю что эти задания правильно решены. Извините что я вас загружаю этими задачами но просто я не понимаю этот язык C++. Помогите ещё задачи решить. 1. Два натуральных... подробнее

Показать сообщение отдельно
Biblio
2 / 2 / 0
Регистрация: 30.04.2009
Сообщений: 27
21.08.2009, 11:13  [ТС]
Цитата Сообщение от accept Посмотреть сообщение
Добавлено через 13 минут 40 секунд
ты путаешь & и && - это совсем разные операции, & работает наподобие сложения, а по свойствам её называют умножением (так как она обнуляет биты при любом раскладе 0 0 , 0 1, 1 0 ), то есть операция + даёт сумму, а операция & даёт свой результат и он совсем не логический
1 & 2 равно 0
2 & 3 равно 2
-1 & -1 равно -1
а суммой называют |, потому что она по свойствам похожа на сумму и даёт еденицу при любом раскладе 1 1, 1 0, 0 1

3 | 2 равно 3

1 | 2 равно 3

-1 | -1 равно -1

единственное, в чем можешь быть уверена, они коммутативны (то есть, от перемены мест слагаемых результат не меняется)
Мне кажется, как раз не путаю. В булевой алгебре для конъюнкции используется &, и в С++ & есть поразрядная конъюнкция (та что оперирует с битами, т.е. 0 и 1). Но ведь и в булевой алгебре при вычислении выражений используется 0 и 1. В этом смысле я имела ввиду, что выражение типа (А&С)|(А&В) есть фактически переход к решению булевых выражений. Начинаю подозревать, что именно поэтому в С++, который работает на разных уровнях (и с битами, и с человекопонятными объектами) понадобилось сохранить знак & (для работы с битами, читай булевыми выражениями), и еще ввести &&, чтобы устанавливать логические отношения между объектами более высокого уровня, т.е. числами и т.п. Это так, оффтоп.
Думаю, что на этом можно задачу закрыть. Видимо, только сам автор задачи знает, зачем было введено дополнительное условие с поразрядными операциями. В любом случае - я потренировалась и кое-что для себя узнала
Для novi4ok Во-первых спасибо за добрые слова. Они, как известно, и кошке приятны . Во-вторых, условие задачи смутное, верно. Но достоинство учебника в том, что там сразу дается много однотипных задач. А это важно, чтобы "руку набить". Многие учебники содержат по одной задачке на каждую тему, поэтому потом все выветривается моментально. К тому же можно решать только первую часть, т.е. вычисление функций с определенными условиями, а вторую оставить в покое.
Цитата Сообщение от skvor Посмотреть сообщение
2) При сравнении вещественных чисел с нулём, лучше вычислять модуль и сравнивать с некоторой константой, которая очень мала, но заведомо больше всяких арифметических ошибок
C++
1
if (fabs(n)<1.0e-7) ... //Считаем n==0
Спасибо, как раз в книжке той же Павловской нашла похожий совет.

Относительно разбивки cout << "f (x < 0 && b !=0): " << f << endl;
Думаю, это чисто стилистические вещи. Сути дела не меняют. Просто для кого-то так удобнее писать, нагляднее.
Всем еще раз большое спасибо.
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru