|
2 / 2 / 0
Регистрация: 30.04.2009
Сообщений: 27
|
||||||
Зачем нужные поразрядные операции. Книга Павловская, Щупак19.08.2009, 21:02. Показов 8507. Ответов 35
Метки нет (Все метки)
Решаю задачу из учебника Павловская, Щупак. С++. Программироание на языке высокого уровня. Структурное программирование. Практикум. Часть 1. Семинар 2. Задача 1. стр. 44. Задачу см. в привязанном файле.
Кажется, я решила задачу, программа работает. Но мне не понятно, зачем авторы пишут про поразрядные операции И и ИЛИ. Мне удалось обойтись без них. Может кто-нибудь объяснить, почему речь идет о поразрядных операциях? Вот мой код. Вроде, работает.
0
|
||||||
| 19.08.2009, 21:02 | |
|
Ответы с готовыми решениями:
35
Правильно ли я написал программу? Из книжки Павловская Щупак Книга Юрий Щупак Win32 API. Разработка приложений для Windows Поразрядные операции |
|
2 / 2 / 0
Регистрация: 30.04.2009
Сообщений: 27
|
||
| 20.08.2009, 21:50 [ТС] | ||
|
Но остается главный вопрос: правильно я поняла задачу или нет? А понимаю я ее так: Требуется 1) вычислить функцию F, 2) вывести ее результаты на экран в зависимости от условия (Ац ИЛИ Вц) И (Ац ИЛИ Сц), которое содержательно никак не связано с самой функцией (дается просто для тренировки). Что я и сделала. Правда, в моем решении почему-то это выражение всегда не равно нулю. Может такое быть или нет?
0
|
||
|
640KB мне хватило на всё.
119 / 50 / 3
Регистрация: 07.06.2009
Сообщений: 447
|
|||||||
| 20.08.2009, 22:29 | |||||||
|
1) срочно забыть про
2) При сравнении вещественных чисел с нулём, лучше вычислять модуль и сравнивать с некоторой константой, которая очень мала, но заведомо больше всяких арифметических ошибок
0
|
|||||||
| 20.08.2009, 22:43 | ||
|
0
|
||
|
8384 / 3618 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
|
|
| 21.08.2009, 00:30 | |
|
0
|
|
|
4866 / 3287 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
|
||||||||
| 21.08.2009, 04:17 | ||||||||
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
|
||||||||
|
2 / 2 / 0
Регистрация: 30.04.2009
Сообщений: 27
|
|||
| 21.08.2009, 11:13 [ТС] | |||
|
Думаю, что на этом можно задачу закрыть. Видимо, только сам автор задачи знает, зачем было введено дополнительное условие с поразрядными операциями. В любом случае - я потренировалась и кое-что для себя узнала ![]() Для novi4ok Во-первых спасибо за добрые слова. Они, как известно, и кошке приятны . Во-вторых, условие задачи смутное, верно. Но достоинство учебника в том, что там сразу дается много однотипных задач. А это важно, чтобы "руку набить". Многие учебники содержат по одной задачке на каждую тему, поэтому потом все выветривается моментально. К тому же можно решать только первую часть, т.е. вычисление функций с определенными условиями, а вторую оставить в покое.Относительно разбивки cout << "f (x < 0 && b !=0): " << f << endl; Думаю, это чисто стилистические вещи. Сути дела не меняют. Просто для кого-то так удобнее писать, нагляднее. Всем еще раз большое спасибо.
0
|
|||
|
2 / 2 / 0
Регистрация: 30.04.2009
Сообщений: 27
|
|
| 21.08.2009, 13:51 [ТС] | |
|
Ошибка с при переходе через ноль все равно остается. См. скриншот.
0
|
|
|
640KB мне хватило на всё.
119 / 50 / 3
Регистрация: 07.06.2009
Сообщений: 447
|
|
| 21.08.2009, 13:57 | |
|
Biblio, таки последнюю версиию программы в студию!
0
|
|
|
2 / 2 / 0
Регистрация: 30.04.2009
Сообщений: 27
|
||||||
| 21.08.2009, 14:05 [ТС] | ||||||
|
Простите, упустила.
При значениях -3 5 0.2 - есть ошибка
0
|
||||||
|
229 / 67 / 11
Регистрация: 02.06.2009
Сообщений: 280
|
||||||
| 21.08.2009, 14:09 | ||||||
|
Тут легче переписать, чем разбиратся правильно ли написано
Сравнивай
0
|
||||||
|
640KB мне хватило на всё.
119 / 50 / 3
Регистрация: 07.06.2009
Сообщений: 447
|
|
| 21.08.2009, 14:14 | |
|
В задании - x сравнивается с нулём операцией <, а у вас
(fabs(x) < 1e-6 && b != 0) т.е. x проверяется на равенство нулю. Вероятно, надо заменить на (x < -1e-6 && b != 0) и аналогично дальше.
0
|
|
|
7176 / 3234 / 82
Регистрация: 17.06.2009
Сообщений: 14,164
|
||||||
| 21.08.2009, 23:35 | ||||||
|
Нужно сравнивать как написано - без всяких fabs(XXX)<1e-6
if ( x<0 && b!=0 ) if ( x>0 && b==0 ) Добавлено через 23 секунды В данном конкретном случае разумеется. Добавлено через 5 минут 17 секунд И вообще Alexandoros в посте #30 все уже написал. Добавлено через 22 минуты 20 секунд Цикл нужно перебирать немного не так - до конечного значения не всегда удается дойти. А так как значение X очень важно для формулы, то предлагаю делать вот так. Заодно это хороший пример как реально представляются значения. И лучше использовать double, а не float. Сравнение 0.0==0 компьютер сделает правильно. Как и сравнения x<0, x>0.
0
|
||||||
|
640KB мне хватило на всё.
119 / 50 / 3
Регистрация: 07.06.2009
Сообщений: 447
|
|||||||
| 22.08.2009, 03:13 | |||||||
|
Скомпилируйте и запустите
0
|
|||||||
|
4866 / 3287 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
|
||||||
| 23.08.2009, 06:31 | ||||||
|
там всё таки не одно и то же
&1 и !=0 потому что с чётной a будет получаться ложь
и то, что они так выглядят, идентично - это просто совпадение
0
|
||||||
|
4866 / 3287 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
|
||
| 23.08.2009, 06:34 | ||
0
|
||
|
7176 / 3234 / 82
Регистрация: 17.06.2009
Сообщений: 14,164
|
|
| 23.08.2009, 23:05 | |
|
2skvor: ты код сначала посмотри, я специально подравниваю значение x при близких к 0 значениях.
0
|
|
| 23.08.2009, 23:05 | |
|
Поразрядные операции Поразрядные операции Поразрядные операции Поразрядные операции Поразрядные операции Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Транслитерация текста с кириллицы на латиницу
Maks 11.11.2026
Решил облегчить жизнь себе и коллегам админам при создании электронных почтовых ящиков для пользователей, в результате написал обработку "Транслитерация текста" с кириллицы на латиницу, а в ней. . .
|
Книги по геймдизайну, левел-дизайну, игровым механикам и проектированию игрового опыта
8Observer8 08.11.2026
Содержание блога | English Version
1. 2003 - 06 - Designing Virtual Worlds (1st Edition)
Автор: Richard A. Bartle | Объем: 768 стр.
Ссылки: Amazon
. . .
|
Родители токсичные абьюзеры по отношению к своим детям ругают их оскорбляют не любят
zorxor 08.11.2026
Жить в атмосфере постоянных оскорблений, критики и холодности со стороны родителей — это тяжелое и болезненное испытание, которое оставляет глубокие эмоциональные раны. Токсичное и абьюзивное. . .
|
Как только я захожу к себе в свою комнату я сразу же с себя снимаю свои трусы. Ответ от Джемени ИИ.
zorxor 08.11.2026
Джемени, как только я захожу к себе в свою комнату я сразу же с себя снимаю свои трусы.
Многие люди, возвращаясь домой, сразу переодеваются в максимально свободную одежду или вовсе предпочитают. . .
|
|
Паттерн очереди действий/команд (Action / Command Queue). Система очереди действий и кат-сцен с SDL3 Callbacks, cglm и OpenGL
8Observer8 07.11.2026
Содержание блога | English Version
Руководство для начинающих по реализации паттерна очереди действий/ команд (Action / Command Queue) на C++ (C++20) с использованием официального SDL3 Callbacks. . .
|
Проверка полного ФИО в типовом справочнике
Maks 07.11.2026
Решение реализовано в конфигурации КА2, на примере справочника "КонтактныеЛицаПартнеров".
Задача:
Запрет инициалов.
Не допускаеть использование сокращений вида "И. И. ", "И. И. ", "И И" и. . .
|
Про "Windows must die!"
kumehtar 04.11.2026
Знаете, чет накатило. . . .
Когда-то это было почти боевым кличем: мол, нормальный человек сидит на DOS, OS/ 2 или Linux, а вот это вот - Must Die. А теперь человек произносит «мастдай» с усмешкой - и. . .
|
Красочные поля с номером страницы svg+background-image
russiannick 04.11.2026
Красочные поля с номером страницы не менее важны чем в эпоху бумажных книг.
Посему спешу представить почтеннейшей публике этот важный инструмент который эти поля и формирует.
В процессе разработки. . .
|