Форум ценителей Kawasaki Ninja 250R и Ninja 300

Разноформатное => Курилка => Тема начата: voidmain от 20.07.2017, 17:31:00

Название: Программисты есть на форуме? Простая задачка с заковыкой.
Отправлено: voidmain от 20.07.2017, 17:31:00
Ахтунг! Язык демонофф! Многа букаFFh!
Возможны крах системы, потеря данных и красные глаза... В общем, я предупредил!
Поехали!

Дано число с плавающей точкой(от 0 до 999.9999):
float f = 23.0204; //choosen by fair dice roll
Надо разделить целую и дробную часть (в виде количества десятитысячных) и записать их в целочисленные переменные.

Быдлокодим:
uint32_t integer, fractional;

integer = f;
fractional = (f - integer) * 10000;
Получаем в результате:
integer == 23
fractional == 203
Что-то пошло не так...
Нужен результат:
integer == 23
fractional == 204
Пока выкрутился так:
uint32_t fract_int_text(float f, uint32_t *integer)
{
char str[sizeof("999.9999")];
uint32_t fractional;

sprintf(str, "%3.4f",f);
sscanf(str, "%u.%4u", integer, &fractional);
return fractional;
}
Это, конечно, работает. Но еще танцует и поет (см. https://lurkmore.to/Индусский_код (https://lurkmore.to/Индусский_код)).
Да и гонять эти спринтфы ссканфы на микроконтроллере накладно...

Существует ли более удачное решение для подобной задачи?
Пишем на Сях(с плюсами и без).
Название: Re: Программисты есть на форуме? Простая задачка с заковыкой.
Отправлено: voidmain от 20.07.2017, 23:47:04
Никто мозг не вывихнул еще?  :wacko:
От преобразования через текст удалось избавиться.
uint32_t fract_int(float f, uint32_t *integer)
{
uint32_t t;

*i = f;
t = (uint32_t)((f - *i) * 100000) % 10;
return (f - *i)*10000 + (t >= 5 ?  1 : 0);
}

В общем, корень зла оказался в машинном представлении чисел с плавающей точкой в купе с правилами округления.
Название: Re: Программисты есть на форуме? Простая задачка с заковыкой.
Отправлено: vavdog от 21.07.2017, 06:33:48
У меня такое тоже бывает — что-то схватит за душу, держит и не отпускает. И тогда или водка... или к бабам. А лучше всё вместе, сразу и много... (с)
 :grin: :grin:
Название: Re: Программисты есть на форуме? Простая задачка с заковыкой.
Отправлено: Змей от 21.07.2017, 14:50:10
 :dash:
Название: Re: Программисты есть на форуме? Простая задачка с заковыкой.
Отправлено: voidmain от 21.07.2017, 16:32:52
:dash:
Вот вот. Понапридумывают дебильных протоколов...
Кстати, видел я исходники приёмной стороны (на сервере). Там идет обратное преобразование.
Так вот там:

float to_float(uint32_t i, uint32_t f)
{
char s[20];
float f;
        //тут сначала вагон проверок
        //........
        //а потом:

sprintf(s, "%u.%u", i, f);
sscanf(s,"%f", &f);
return f;
}
Анекдот, бля. Обхохочешься.
Вот так на всяких ксеонах многоядерных о ста гигах оперативы хуярят говнокод и орут за новый сервак, бо этот уже не тянет.

PS: В общем, тему можно закрывать.
Задача решена. Землекопа полтора.
Название: Re: Программисты есть на форуме? Простая задачка с заковыкой.
Отправлено: Zlobniy от 22.07.2017, 10:28:10
Теперь вы понимаете, что мне надо бухать каждый день, т.к. я это каждый день выслушиваю )))
Название: Re: Программисты есть на форуме? Простая задачка с заковыкой.
Отправлено: Эль Дуб от 22.07.2017, 14:46:38
Вызывайте священика,срочно!
Название: Re: Программисты есть на форуме? Простая задачка с заковыкой.
Отправлено: voidmain от 26.07.2017, 21:05:07
Вызывайте священика,срочно!
Это линуксоидам надо. Это у них там демоны.

Теперь вы понимаете, что мне надо бухать каждый день, т.к. я это каждый день выслушиваю )))
Как в анекдоте:
Любовь-это не когда он дарит тебе цветы, а ты их нюхаешь...
Это когда он три часа рассказывает тебе про 95 бензин, а ты слушаешь.
Не перебивая...
Название: Re: Программисты есть на форуме? Простая задачка с заковыкой.
Отправлено: CraftMan от 19.09.2017, 13:22:53
Главная задача программиста - убить в себе перфекциониста
Название: Re: Программисты есть на форуме? Простая задачка с заковыкой.
Отправлено: Эль Дуб от 19.09.2017, 13:41:24
Главная задача программиста - убить в себе перфекциониста
это что то нахуеверти%ь, сказать что то невнятное и съебат%ся.
Название: Re: Программисты есть на форуме? Простая задачка с заковыкой.
Отправлено: BlackLady от 19.09.2017, 15:17:17
Не, Лёх, то что ты описал, это прерогатива манагеров)
Название: Re: Программисты есть на форуме? Простая задачка с заковыкой.
Отправлено: Эль Дуб от 19.09.2017, 15:51:35
Не, Лёх, то что ты описал, это прерогатива манагеров)
я когда буду президентом, то - юристов, бухгалтеров, компьютерщиков, дизайнеров в сибирь отправлю)))
Название: Re: Программисты есть на форуме? Простая задачка с заковыкой.
Отправлено: Zlobniy от 19.09.2017, 17:59:37
я когда буду президентом, то - юристов, бухгалтеров, компьютерщиков, дизайнеров в сибирь отправлю)))
Я торгаш теперь, меня нельзя отправлять!  :so svechoi:
Название: Re: Программисты есть на форуме? Простая задачка с заковыкой.
Отправлено: Эль Дуб от 19.09.2017, 20:50:24
Я торгаш теперь, меня нельзя отправлять!  :so svechoi:
Не, у тебя индульгенция.
Название: Re: Программисты есть на форуме? Простая задачка с заковыкой.
Отправлено: BlackLady от 19.09.2017, 20:53:08
юристов, бухгалтеров, компьютерщиков, дизайнеров в сибирь

То, что на юристов у тебя огромный зуб, это я знаю. С бухгалтерами не очень понятно, ну да и ладно. А чем компьютерщики с дизайнерами не угодили?

у тебя индульгенция

Неожиданный поворот событий... :mda: Я, видимо, чего-то не знаю :ph34r:
Название: Re: Программисты есть на форуме? Простая задачка с заковыкой.
Отправлено: Эль Дуб от 19.09.2017, 20:56:51
То, что на юристов у тебя огромный зуб, это я знаю. С бухгалтерами не очень понятно, ну да и ладно. А чем компьютерщики с дизайнерами не угодили?

Неожиданный поворот событий... :mda: Я, видимо, чего-то не знаю :ph34r:
Ну он не подходит под формат компьютерщиков)
Да тут просто сталкивался пару раз....
Название: Re: Программисты есть на форуме? Простая задачка с заковыкой.
Отправлено: Dr.Paulan'ыч от 20.09.2017, 12:36:37
я когда буду президентом, то - юристов, бухгалтеров, компьютерщиков, дизайнеров в сибирь отправлю)))
Хорошо, что я перестал быть дизайнером...
Так неохота в Сибирь)))
Название: Re: Программисты есть на форуме? Простая задачка с заковыкой.
Отправлено: Эль Дуб от 20.09.2017, 13:29:31
Хорошо, что я перестал быть дизайнером...
Так неохота в Сибирь)))
да я тут пытался заказать дизайн дома (внутрянка), потом по мебели часто народ с дизайнерами приезжает :osel: :rev:

вот, забыл, еще в мой список надо добавить -коучинг
Название: Re: Программисты есть на форуме? Простая задачка с заковыкой.
Отправлено: BlackLady от 20.09.2017, 13:52:10
коучинг

Тут, пожалуй, соглашусь. От одного слова буржуйского уже воротит. Развелось этих псевдопомогаек как свиней нерезаных, а толковых людей с гулькин нос. И, что печально, пипл нынче всю эту водичку сладкую, в уши залитую, радостно хавает.
Название: Re: Программисты есть на форуме? Простая задачка с заковыкой.
Отправлено: Эль Дуб от 20.09.2017, 13:54:40
пипл нынче всю эту водичку сладкую, в уши залитую, радостно хавает.
согласен на все 100%
Название: Re: Программисты есть на форуме? Простая задачка с заковыкой.
Отправлено: CraftMan от 21.09.2017, 18:12:43
я когда буду президентом, то - юристов, бухгалтеров, компьютерщиков, дизайнеров в сибирь отправлю)))

Я только за, прогать и там мона
Название: Re: Программисты есть на форуме? Простая задачка с заковыкой.
Отправлено: BlackLady от 22.09.2017, 09:06:03
Вот, кстати, на Алтае или близ Байкала вариант неплохой, пожалуй. Тишина, спокойствие, умиротворение - для нас, айтишников, вполне творческая среда.
Название: Re: Программисты есть на форуме? Простая задачка с заковыкой.
Отправлено: vavdog от 22.09.2017, 13:52:56
Вот, кстати, на Алтае или близ Байкала вариант неплохой, пожалуй. Тишина, спокойствие, умиротворение - для нас, айтишников, вполне творческая среда.

Точно!!!
...и леса много...
 :rev:
Название: Re: Программисты есть на форуме? Простая задачка с заковыкой.
Отправлено: Змей от 22.09.2017, 14:21:57
сначала всех к Тиму, сад косить, а потом уж в Сибирь...
Название: Re: Программисты есть на форуме? Простая задачка с заковыкой.
Отправлено: Эль Дуб от 22.09.2017, 14:25:16
сначала всех к Тиму, сад косить, а потом уж в Сибирь...
а че сразу к тиму, можно и ко мне приехать все покосить, потом к тиму, потом в сибирь
Название: Re: Программисты есть на форуме? Простая задачка с заковыкой.
Отправлено: Змей от 22.09.2017, 14:28:15
ок, к Тиму, потом к тебе, потом к Вавдогу, потом в Сибирь
Название: Re: Программисты есть на форуме? Простая задачка с заковыкой.
Отправлено: BlackLady от 22.09.2017, 14:42:27
косить

Ооо, это я умею...) И забиваю тоже очень-очень хорошо)))
Название: Re: Программисты есть на форуме? Простая задачка с заковыкой.
Отправлено: MaxyS от 22.09.2017, 14:46:53
ок, к Тиму, потом к тебе, потом к Вавдогу, потом в Сибирь
Боюсь после Вавдога печень уже откажет...
Название: Re: Программисты есть на форуме? Простая задачка с заковыкой.
Отправлено: Kирилл от 22.09.2017, 20:13:54
Мля! Зайдёшь раз в полгода на форум Тимура поблагодарить за работу а тут вот такое. Ребята вы как вообще? Не успел остальное перечитать. У вас всё нормально?
P.S. Выходит в Сибирь мне ехать аж по трём сценариям. Лёх, ты извини но я  пожалуй голосовать буду за Путина.
Название: Re: Программисты есть на форуме? Простая задачка с заковыкой.
Отправлено: Эль Дуб от 22.09.2017, 20:39:05
Мля! Зайдёшь раз в полгода на форум Тимура поблагодарить за работу а тут вот такое. Ребята вы как вообще? Не успел остальное перечитать. У вас всё нормально?
P.S. Выходит в Сибирь мне ехать аж по трём сценариям. Лёх, ты извини но я  пожалуй голосовать буду за Путина.
Какие люди)) куда то совсем пропал!
Название: Re: Программисты есть на форуме? Простая задачка с заковыкой.
Отправлено: Kирилл от 22.09.2017, 20:45:27
Какие люди)) куда то совсем пропал!
Да что-то времени не стало совсем ни на что :dash: Не понимаю как у окружающих всё выходит размеренно и по плану. Последний год в постоянном цейтноте. Вот сделал попытку исключить из своей жизни всю активность кроме работы, секса еды и сна. Один фиг ничего не изменилось :sad:.
Название: Re: Программисты есть на форуме? Простая задачка с заковыкой.
Отправлено: Эль Дуб от 22.09.2017, 20:46:36
Да что-то времени не стало совсем ни на что :dash: Не понимаю как у окружающих всё выходит размеренно и по плану. Последний год в постоянном цейтноте. Вот сделал попытку исключить из своей жизни всю активность кроме работы, секса еды и сна. Один фиг ничего не изменилось :sad:.
Пробовал включить включить вино-водочную активность?
Название: Re: Программисты есть на форуме? Простая задачка с заковыкой.
Отправлено: Kирилл от 22.09.2017, 20:55:09
Пробовал включить включить вино-водочную активность?
Она часто самопроизвольно отключается, если поздно домой приезжаешь. Но в целом да, бухать стал заметно меньше. Наверное поэтому злой постоянно. :smiley:
Название: Re: Программисты есть на форуме? Простая задачка с заковыкой.
Отправлено: Dr.Paulan'ыч от 22.09.2017, 22:31:37
поэтому злой постоянно. =)
Надо быть добрее o:-)
Название: Re: Программисты есть на форуме? Простая задачка с заковыкой.
Отправлено: vavdog от 22.09.2017, 23:48:26
...Вот сделал попытку исключить из своей жизни всю активность кроме работы, секса еды и сна. Один фиг ничего не изменилось :sad:.

Брошу пить, курить, еб...ться.
Работой буду заниматься!
Работой буду заниматься -
Будут деньги появляться.
Будут деньги появляться -
Буду пить, курить, еб...ться!
Название: Re: Программисты есть на форуме? Простая задачка с заковыкой.
Отправлено: cenzzor от 01.06.2018, 05:48:02
Так нашлись программисты?
Есть работа. CV на мэйл. Работы много. Сложно. Местами интересно. Стабильно. Денежно. Перспективно. Знание фин. рынков, учета цб и деривативов будет преимуществом. Если знаешь, что такое Sybase и TSQL - шли cv. Не является пустым звуком Kondor+ - бегом шли резюме!  [:Q
Шаблонов: 1: Printpage (default).
Дополнительных шаблонов: 4: init, print_above, main, print_below.
Языковых файлов: 2: index+Modifications.english (default), index+Modifications.russian-utf8 (default).
Файлов стилей: 0: .
Подключено файлов: 13 - 456KB. (показать)
Запросов в БД: 18.

[Показать запросы]