|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
21.02.2013, 09:03 | #1 | |
Тот ещё
Старожил
Регистрация: 14.11.2007
Сообщений: 2,242
|
Округление целочисленной константы в большую сторону
Подскажите плиз, как проще округлить целочисленную константу в большую сторону до фиксированного значения. Вот мой
Код:
Цитата:
Код:
|
|
21.02.2013, 09:28 | #2 |
Форумчанин
Регистрация: 27.11.2012
Сообщений: 190
|
Наверное, вы не видели по-настоящему громоздких конструкций. Обзовите переменные покороче или сделайте функцию с говорящим названием
|
21.02.2013, 09:43 | #3 | ||
Тот ещё
Старожил
Регистрация: 14.11.2007
Сообщений: 2,242
|
Цитата:
Код:
Код:
Цитата:
|
||
21.02.2013, 09:44 | #4 | |
Старожил
Регистрация: 04.02.2009
Сообщений: 17,351
|
Цитата:
ЗЫ. Еще я не понял, зачем округлять константы на этапе выполнения программы...
Маньяк-самоучка
Utkin появился в результате деления на нуль. Осторожно! Альтернативная логика Последний раз редактировалось Utkin; 21.02.2013 в 09:46. |
|
21.02.2013, 10:02 | #5 | |
Тот ещё
Старожил
Регистрация: 14.11.2007
Сообщений: 2,242
|
Я сторонник такого подхода: http://www.gunsmoker.ru/2010/07/blog-post_31.html . Практика показала, что:
1. код, требующий подробных комментариев, как правило требует хорошей переработки (исключение составляют редкие замороченные алгоритмы и asm-вставки) 2. написание качественных комментариев отнимают много времени, а некачественные - только сбивают с толку 3. проще разобраться по коду (если он опять же 'грамотный'), чем по написанным когда-то комментариям Цитата:
Последний раз редактировалось Sibedir; 21.02.2013 в 10:13. |
|
21.02.2013, 10:27 | #6 | ||||
Старожил
Регистрация: 04.02.2009
Сообщений: 17,351
|
Цитата:
Цитата:
Цитата:
Ну да дело Ваше Цитата:
Ну не это главное, я повторю вопрос - зачем вычислять константу? Что Вам мешает посчитать Ваши цифры заранее?
Маньяк-самоучка
Utkin появился в результате деления на нуль. Осторожно! Альтернативная логика |
||||
21.02.2013, 10:56 | #7 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
да, кстати, мне тоже непонятно, кто мешает написать так?!
Код:
Цитата:
Последний раз редактировалось Serge_Bliznykov; 21.02.2013 в 11:01. |
|
21.02.2013, 12:30 | #8 | |
Тот ещё
Старожил
Регистрация: 14.11.2007
Сообщений: 2,242
|
Цитата:
Код:
2. Если структура типа изменится (а она изменится. тип данных - это запись, поля которой добавляются по ходу разработки программы), то есть вероятность забыть пересчитать эти константы. 3. При ручном расчете 99,999999999% возникнут проблемы при портировании кода в иную среду разработки. 4. Размер структуры зависит от размера указателя (некоторые поля - это указатели). Ясен пень, что при компиляции на x64 придется всё пересчитывать. Зачем мне все эти проблемы, если можно просто посчитать константу на этапе компиляции. Подобная арифметика может понадобится и на этапе выполнения. Приятно иметь более рациональное решением, хотя действительно это может не иметь особого смысла с точки зрения оптимизации и удобочитаемости (можно и коммент поставить). Вопрос не 'зачем', а 'как написать короче'? Ну, типа задачка для пытливых умов. Мне вот ничё толкового в головы не идет. Может кому придёт. |
|
21.02.2013, 13:51 | #9 | |||||
Старожил
Регистрация: 04.02.2009
Сообщений: 17,351
|
Цитата:
Цитата:
Цитата:
Цитата:
Вы обратили внимание к чему я придираюсь? Ваши проблемы связаны с тараканами в голове, а не с реальной ситуацией (которая и выеденного яица не стоит). Цитата:
Serge_Bliznykov дал оптимальный вариант. Короткий, понятный и самый быстрый. Лично я бы использовал переменные, которые бы инициализировались от данных констант.
Маньяк-самоучка
Utkin появился в результате деления на нуль. Осторожно! Альтернативная логика |
|||||
21.02.2013, 13:56 | #10 |
Тот ещё
Старожил
Регистрация: 14.11.2007
Сообщений: 2,242
|
Utkin, замечания приняты. Тараканов шугать периодически нужно, согласен
Ну так есть у кого более короткая запись? P.S.: Модераторам: В принципе, тему можно и в другой раздел перенести, я не против. |
|
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Деление нацело с округлением в большую сторону | NioTo | Паскаль, Turbo Pascal, PascalABC.NET | 25 | 11.10.2013 14:14 |
Функция округления в большую сторону в c++ | Karina89 | Помощь студентам | 1 | 23.11.2011 18:02 |
Помогите сместить большую картинку на кнопке SpeedButton1 | DemonXT | Компоненты Delphi | 4 | 19.11.2009 15:28 |
Округление в большую или меньшую сторону | Shokoladniu | Microsoft Office Excel | 5 | 15.10.2009 17:37 |
Задача на большую строку | Witaliy | Помощь студентам | 4 | 10.02.2009 18:26 |