All streams
Search
Write a publication
Pull to refresh
2
0
Send message
inline Point Middle(Point p1, Point p2){  
  double x = p1.GetX() / 2 + p2.GetX() / 2;  
  double y = p1.GetY() / 2 + p2.GetY() / 2;  
  return Point{x, y};
}

можно еще оптимизировать:

inline Point Middle(const Point p1, const Point p2)
{  
  double x = p1.GetX() *0.5 + p2.GetX() * 0.5;  
  double y = p1.GetY() *0.5 + p2.GetY() *0.5;  
  return Point{x, y};
}

Если я правильно понимаю, побочным эффектом обоих вариантов кода является неявная защита от переполнения. Ежели об этом не особо заморачиваться (например, проверкой входных параметров, что тоже вопрос по эффективности. Но, иногда, эту самую проверку можно вынести на более высокий уровень), то не будет ли эффективнее:

double x = p1.GetX() + p2.GetX() / 2;

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

Увы и ах, но это не так. У хорошего электролобзика есть некоторая "проблемка" - он именно держит направление реза. Там еще, обычно есть настройка "шага", то есть подача пилки вперед, типа движения пилки по траектории, повторяющей овал и , соответственно, движение пилки вниз - вперед - вверх. А направление реза у этого самого лобзика. зависит от материала реза и его толщины. Ширины полотна, толщины (опять же от толщины и характера материала, который режем). Ну, а в конце концов, лобзик, как и любой ручной инструмент не может конкурировать со стационарным станком, даже просто "верстак и струбцина". Вот только "есть нюанс (не ньюанс, ибо профанация), а, еще, внезапно, лобзик есть лобзик - рисуем.

Вы не поверите (стандартное начало для "неких откровений"). Забудьте о неких онлайн экспертах и прочих "крутых характеристиках", как ни странно - "сарафанное радио" с поправкой. С поправкой на реальное использование. У меня есть "шурик" бошевский, типа поломатый - сломан переключатель направления вращения. Там в сего лишь прилив на пластинке размером в половину спичечной головки. С меня запросили весь блок управления скорости вращения, направления и прощего. В треть стоимости самого шуруповерта. 8 лет назад. Про некоторый набор реального бошевского инструмента и его трудового пути могу рассказать немало. Блин, извините, зацепило псевдоМАКИТА, прикупил на пробу недавно. Еще раз извините. Пока испытую набор: сразу - блестяшки "битки" - блестяшки - не инструмент. Серенькая - маскировка, сиречь та же дрянь.

Ну офигеть ноне не новость. Кому и куда может прилететь? А, в общем-то: "прикупил я шуруповерт по акции", сейчас присматриваюсь и проверяю. Вопрос в том, что " что, "шурик пришедший" вообще "ноунейм". Да, на аккумуляторе нет маркировки, и, что, характерно, пофигу. У "мну" много технических средств для того, чтобы "забыть неинтресное". А вообще, я спать хочу.

Не боитесь баян порвать? И, вообще, сия проблема до сих пор в ходу? Лет так 25-27 назад тот самый sscanf уже был "не торт".

Забавно. Мне это напомнило времена юности.Как-то с парнем из параллельного класса задумались о переработке полиэтиленовых пакетов и прочего полиэтиленового. Нас впечатлило время разложения в природе. 80-е годы: полиэтилен на поверхности земли разлагается за время от 30 до 150 лет. Под землей - от 600. Так нам доводили. Ну, рассказали, и рассказали. Типа пацанам 13 лет не шибко интересно. Какая-то там экология. Но, блин, окрестности приполярного городка с, едва ли, 30 тыс. населения, были настолько замусорены тем самым полиэтиленом, что ... Вот и возникла у пары парнишек, что чуток вперед школьной программы заглядывали по привычке. Из полиэтилена (времена "сухого закона имени Горбачева") делать спирт. Информации минимум. Каками путями нам перепала информация о существовании некой загадочной зимазы - фиг его знает. Это сейчас (час назад) я узнал, что этот фермент для нашей задумки непригоден. Ни для деполимеразации полиэтилена, ни для синтеза спирта не предназначен. А тогда прям красивая схема в умах вьюнош с глазами горящими: превращаем полиэтилен в этилен (термо или ферменто - не помню), и соединяем с водой. C2H4 + H2O = C2H5OH = C2H6O. Типа так.

"Обделался" маркетплейс, а виноваты продавцы. Замечательно. И в чем они виноваты? Нашли как заплатить меньше? А WB не ищет, да? Всего лишь "кто кого нае..." Особливо на фоне скандальном о переложении ответственности за косяки доставки.

Забыли про нихромку с грузиком. Или оною же внатяг. Правда возникают проблемы относительно точного позиционирования при резке (прожигании материала). Этот метод наилучший при использовании фанеры толщиной более 12 мм. Но очень трудоемкий.
А МДФ: мелкодисперсная фракция — та же ДСП, только опилки мельче.

Да, здорово.

Я сам уже давно не в IT (с 2017 года), поэтому вопрос: в JS напряжно с битовыми операциями? Я к тому, что чем не угодила связка: базовый, он же первый, он же единственный полноценный кадр (субкадр, секция, ячейка) + битовая карта измененных пикселей + список замен? Все части весьма неплохо ужимаются. И рендерить на канвас можно, как минимум, двумя способами. Попиксельно, со сверкой с картой и подстановкой замен в позиция, отличных от ноля в карте, и "пакетно", пробегаясь по карте в поисках следующей единицы в карте и копируя оригинал пачками пикселей с подстановкой замен в разрывах цепочки нолей.

Насчет мажорных не уверен. Особо не фиксировал, но последние года полтора "наслаждаюсь чередующимися бяками". Очередное обновление - периодические и непредсказуемые BSOD с "диагнозом" DRIVER_POWER_STATE_FAILURE. Следующее за ним - сей "синий экран" вроде не наблюдается, зато, по возврату из спящего режима, умирает клавиатура. Ляпота. Ну и (совсем уж не протоколировал) то есть, то нет в диспетчере устройств и диспетчере задач дискретная видеокарта. Общался и с производителем и с "Мелкософтом" - результат "абу". Ноутбук HP OMEN c Intel CORE i7 7th Gen и NVIDIA GEFORCE GTX 1050i.

Что может означать количество кодов было ограничено? Вообще-то использовалась комбинация: номер карты и код под стираемой полосой. По-поводу номера карты могу согласиться с некоторой натяжкой - более чем пятизначного не встречал (за остальные населенные пункты не скажу), код же был буквенно-цифровой, длиной, если не ошибаюсь, 8 или 10 символов. Неплохое ограничение. Скорее похоже, что сгенерировано было ограниченное кол-во сочетаний, и, по-мере использования, запускались в оборот заново. Что вообще-то похоже на Ваше предположение, но номера карт росли линейно, насколько помнится.

О, да. Начало 2000-х, dial-up в райцентре (около 70 км от Уфы). Модем ZyXel OMNI 56K вполне уверенно держал от 19200 до 33600. В особенно удачное время - ажно до 48000, но очень редко. Провайдер - Башинформсвязь по-моему, или как-то похоже называлось. Офис в здании Почтампта на улице Ленина, вход со двора. Оплата по карточкам. Совершенно случайно была найдена дыра - карточки можно было использовать повторно по истечении нескольких месяцев. Помнит ли кто-нибудь еще об этом? А может и не знали.

Напомнило. Примерно 1998 год. Помер Maxtor на 400 Мб. Есть еще один в соседнем компьютере. Диспозиция: издательство отделения РАН (безденежно, да и обратиться некуда), я (верстальщик, не web). Примечание 1: диски почти «забиты под завязку», бекапить некуда и надо извлечь максимум. Процесс: с рабочего диска снимается плата и устанавливается на «больного». Попытка прочесть — читается. Кое-как было все, что прочитано, раскинуто на несколько других дисков. Примечание 2: насколько мне помнится, флэш-память тогда была дороговата и для ремаппинга выделялась часть физической поверхности. Потому, похоже, и удался трюк с простой перестановкой платы.
«А на последок я скажу»: довелось как-то прочесть (оговорюсь, речь шла о дисках той поры, до GMR), что «период полураспада», то есть время по истечении которого, намагниченность доменов уменьшается в два раза, составляет около 7 лет. Добавлю, также, для компакт-дисков прогнозировали срок хранения примерно в 30 лет.
Помнится, году в 2008, во время внутрифирменных посиделок (для корпоратива фирма была мала), один мудрый человек произнес: «Работа не ходит домой, дом не ходит на работу». Может он и не автор, но все же.
Банальная информационная рассылка, как минимум, присутствует. Во всех (по крайней мере в нашей местности) присутственных местах развешены памятки о наиболее популярных способах работы мошенников. Но, «кто же их читает?».
Диспозиция: Офис на 6 этаже; офис (отделение) Сбербанка на 1 этаже. Звонок: «Я сотрудник службы безопасности Сбербанка ...» и т.п. В разговоре (тут я повелся) ненавязчиво выяснил мой кредитный лимит по карте и тут же заявил, что надо проверить данные. Далее начинается веселуха. Мол, доберитесь до банкомата и произведите следующие действия:…. Я прошу паузу на это самое «доберитесь до банкомата». Сей «товарисч» соглашается. Обращаюсь к миловидной (стараются, не отнять) девушке — сотруднице Сбербанка: --Так, мол, и так, звонят мошенники, пора обращаться в службу безопасности (номер телефона — вот он, сейчас сам позвонит). В Ответ: — Я не знаю зачем это вам надо, да и нам тоже. Легкий ступор. Потом — «да ну вас нафиг, покуражусь». Принимаю звонок и следую инструкциям звонящего вплоть до отправки средств (подтверждения ни-ни), и, собственно, говорю: «Спасибо, очень повеселил, дал рекомендацию службе безопасности Сбербанка и управлению »..." МВД". Произошло в 2016 г.
2

Information

Rating
4,905-th
Registered
Activity