169 похожих чатов

Ребят подскажите, у меня int число к примеру, 28000, мне

надо чтоб он его круглял до 30000 к примеру, как это реализовать?

32 ответов

18 просмотров

Я бы делил на 10000 и просто округлял. А потом бы обратно множил на 10000

Dominic Herzog
а если 1000000 будет?

ну получится на выходе тоже самое разаделил округлит умножит. Не понял подвоха.

округлять или до ближайшего большего? и какой шаг? Делите на шаг, потом делайте округление, потом умножайте на шаг

Аят-Алиев Автор вопроса
Kirill Bubochkin
округлять или до ближайшего большего? и какой шаг?...

Уже все спасибо, разобрался, делю в начале на 1000, потом округляю десятичную, и умножаю на 1000, все работает как надо😁

Аят Алиев
Округляет

ну значит, вы делаете не то, что написали

Вам нужно только десяти тысячные?

Аят-Алиев Автор вопроса
Kirill Bubochkin
ну значит, вы делаете не то, что написали

Ну сделал так, (28000/1000).celf()*1000 работает

Аят Алиев
Уже все спасибо, разобрался, делю в начале на 1000...

По хорошему вам надо на 10 делить и увеличивать 10,100,1000,10000,100000 пока вы не получите остаток от деления, как получите остаток, то надо разделить на предыдущее значение (10,100,1000...) потом округлить и потом умножить на значение.

Аят-Алиев Автор вопроса

а как будет выглядет это кодом?)

Аят Алиев
а как будет выглядет это кодом?)

int increment = 10; while (число % increment == 0){ increment*=10; }

danil l.
int increment = 10; while (число % increment == 0)...

нет, для 12345 это не сработает

Аят-Алиев Автор вопроса
Kirill Bubochkin
нет, для 12345 это не сработает

как тогда в этом случае быть?

Аят Алиев
как тогда в этом случае быть?

сравнивайте результат целочисленного деления с нулем

Аят-Алиев Автор вопроса
danil l.
int increment = 10; while (число % increment == 0)...

в таком случае дает 10к а должен давать 30к

Аят-Алиев Автор вопроса

а можно кодом пожалуйста

Аят Алиев
а можно кодом пожалуйста

шаг-то какой нужен? в 5 или в 10?

Аят-Алиев Автор вопроса
Kirill Bubochkin
шаг-то какой нужен? в 5 или в 10?

допустим если число 380, то будет 400, если 4к то даст 5к, если 11к то 10к должен давать

Аят Алиев
допустим если число 380, то будет 400, если 4к то ...

плохое условие. Функция округления должна быть идемпотентна, а у вас получается round(3800) == 4000; round(4000) == 5000. Это точно правильное условие?

Аят-Алиев Автор вопроса
Kirill Bubochkin
плохое условие. Функция округления должна быть иде...

🤔🤔🤔 давайте я уточню тогда еще, вы правы плохое условие

Аят-Алиев Автор вопроса
Kirill Bubochkin
плохое условие. Функция округления должна быть иде...

нужно округлять так, до тысячных и сотых, округлять надо так же в большую сторону, если 380, то 400, если 27.800, то 28

Аят-Алиев Автор вопроса
Kirill Bubochkin
а если 30? 24000? 23400?

(если 30 то 30, если 24 то 24) т.к округляем до тысячных, если 23.400 то 24000, т.к округляем в большую сторону

Аят Алиев
(если 30 то 30, если 24 то 24) т.к округляем до ты...

округленное число должно быть кратно 10,100,1000...?

Аят-Алиев Автор вопроса
danil l.
округленное число должно быть кратно 10,100,1000.....

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

Kirill Bubochkin
шаг-то какой нужен? в 5 или в 10?

int funcA (int value, int multiplicator){ int temp =value % multiplicator; if (temp !=0){ double stepOne =(value / multiplicator); int stepTwo = stepOne.ceil(); int stepThree = stepTwo*multiplicator; return stepThree;} else{ funcA(value,multiplicator*10);} } null safety осталось пофиксить, но я гляжу условия меняются на лету.

Аят Алиев
да получается так и в большую сторону всегда, в ме...

int round(int v) { final n = pow(10, v.toString().length - 1).toInt(); return (v / n).ceil() * n; }

Аят-Алиев Автор вопроса

Похожие вопросы

Обсуждают сегодня

а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
63
Эх кто-то пришел и весь праздник испортил :( You need complex FBX scene importing setup to change things on import? good luck with that. You need navigation and pathfinding? g...
Serg Gini
5
Всем привет! Подскажите. Я написал приложение на Delphi 10.2 Tokyo под Windows 10. И передо мной стал вопрос о том чтобы сделать это приложение кроссплатформенным (под Linux и...
Дмитрий Завгородний
24
Почему стало ломаться на D11? "739002.86400000' is not a valid timestamp" function IncDateTime(aStamp:TTimeStamp;aKind:TTriggerKind;aInterval:Integer):TDateTime; //aStamp = 2...
Катерина Свиридова
8
Привет всем. Подскажите где можно посмотреть, какая версия электрон, поддерживает версии windows? Некий changelog. Мне бы желательно, поддержку 7,8,10... latest, как понимаю и...
Anonym Squad
21
думаешь я не смогу также сделать? мне это просто не удобно
int 💳 𝙖𝙞𝙧 𝙗𝙞𝙜 𝙗𝙤𝙗 🔫 check bio / spam block / AFK / nohello.com / GMT+3
9
Портфолио: Зовут меня Александр, мне 36 лет. Город Пушкино. Общий рабочий стаж: ~14 лет Уровень квалификации: Senior Full-stack developer Где прочесть мой код? https://github....
Magic
10
Ребят, чет я уже не догоняю... Крч в коде на асм там происходит нечто вроде a+число (a+1, a+2 и т.д.). Но почему строка lea ecx, [edx+1] работает как a+1?? В edx берется адрес...
Alan 🔝 Бэброу
3
Есть ли смысл устраиваться на 1с ? Даст это плюс в дальнейшем трудоустройстве на php? Просто у меня в городе вакансий на пхп нету. Или лучше удаленно искать. Опыта работы нету...
Azamat
14
hi im a cs student. i need some advice from people who have enough experience in Embedded Software. I need to know whether this profession is suitable for me. I have watched s...
Sahand 🏔️
8
Карта сайта