Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> три в кубе = 26, анекдотическая история 
V
    Опции темы
Dr.Wisdom
Дата 10.5.2006, 13:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 145
Регистрация: 6.1.2005

Репутация: нет
Всего: 0



Вот такая конструкция
Код

  int p = floor((log(u)/log(3)));
  int r = exp(log(3)*p);
  DB_OUT(r << " = " << exp(log(3)*p) << " = " << "exp(log(3)*" << p << ")\n")

выводит следующую строку
Цитата

26 = 27 = exp(log(3)*3)


Ну уж что может быть проще? 

Присвоил значение переменной, а она уменьшаеться на единицу!

На всякий DB_OUT выглядит так

Код

 ofstream con("DEBUG.TXT");
 #define DB_OUT(T) con << T;


Я впринцыпе обйду проблему, но ведь так же не бывает! Я вроди выспавшийся даже.

Добавлено @ 13:16 
ЗЫ. Это я ищу ближайшую степень тройки для числа u
приведенная строка выводитсяь когда в u ввожу число, которое должно быть превращено в 27 (30 например) 


 ! 
chipset
"Аффтар" был отправлен в бан на один день за мат в заголовке темы.
Спасибо.
Chipset.
 
--------------------
VIVA LA RESISTANCE
PM MAIL   Вверх
UnrealMan
Дата 10.5.2006, 13:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 722
Регистрация: 30.3.2006

Репутация: 27
Всего: 32



Цитата(Dr.Wisdom @  10.5.2006,  13:12 Найти цитируемый пост)
Присвоил значение переменной, а она уменьшаеться на единицу!

Не на единицу, а на дробную часть (которая отбросилась при преобразовании double в int), близкую к единице. Когда вычисляешь выражения с плавающей точкой, набо быть готовым к тому, что в качестве результата вычисления вместо 27 может получиться что-то вроде 26.9999999999999982.
cout при выводе округлит этот результат до 27, а преобразование в int просто отбросит дробную часть, отчего и получишь 26. 
PM MAIL   Вверх
threef
Дата 11.5.2006, 16:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 375
Регистрация: 27.10.2005
Где: Запорожье

Репутация: 9
Всего: 10



int r = exp(log(3)*p);
 тут как раз ошибка. В верхней строке округлил, в нижней - постеснялся 
PM MAIL   Вверх
armageddon
Дата 11.5.2006, 17:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 117
Регистрация: 9.11.2005
Где: 239

Репутация: нет
Всего: нет



мдя,Dr.Wisdom, извини на наезд, но ты с типами умеешь работать? 
PM MAIL   Вверх
Dr.Wisdom
Дата 12.5.2006, 00:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 145
Регистрация: 6.1.2005

Репутация: нет
Всего: 0



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

НУ ДА, ДА ЗНАЮ Я! ИДИОТ Я! НУ ЧТО ЕЩЕ МОГУ СКАЗАТЬ?!! 
--------------------
VIVA LA RESISTANCE
PM MAIL   Вверх
Dr.Wisdom
Дата 17.5.2006, 13:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 145
Регистрация: 6.1.2005

Репутация: нет
Всего: 0



Задал дурацкий вопрос. Невыспался, не заметил, что индексы в массиве не исправил.
Не нашел как удалить сообщение.
Поэтому написао это. 

Это сообщение отредактировал(а) Dr.Wisdom - 17.5.2006, 13:55
--------------------
VIVA LA RESISTANCE
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0817 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.