• В каких случаях логичней чтобы получить половину умножать на 1/2, а в каких делить на 2?

    Никогда если честно не видел, чтобы умножали на 0.5 там, где нужно поделить на 2.

    В теории, если у тебя очень глупый компилятор, то умножение на 0.5 будет быстрее, чем деление на 2.

    Ещё это может иметь смысл, если у тебя есть число типа int, и ты хочешь его поделить на два, и чтобы в результате получилось число типа double. Тогда умножение на 0.5 будет компактнее, чем приведение типов явно.

    В общем нужно смотреть на конкретную ситуацию. А математического смысла за этим не стоит
    Ответ написан
    Комментировать
  • В каких случаях логичней чтобы получить половину умножать на 1/2, а в каких делить на 2?

    @Mercury13
    Программист на «си с крестами» и не только
    ЦЕЛЫЕ ЧИСЛА / ФИКСИРОВАННАЯ ЗАПЯТАЯ
    ·0,5 в фиксированной запятой нет никакого смысла. /2 и арифметический сдвиг >>1 ведут себя немного по-разному на отрицательных числах, и как сейчас оптимизируют /2 с сохранением точности до бита — я не в курсе (Godbolt показывает пекло какое-то на пять команд — и оно быстрее, чем div?).

    ДРОБНЫЕ ЧИСЛА
    С /2 и ·0,5 никакой разницы, но второе быстрее. Если коэффициент не умещается в компьютерное дробное (⅓, например) — если нет никакого сакрального смысла в точности до бита, можно множить.
    Ответ написан
    Комментировать
  • В каких случаях логичней чтобы получить половину умножать на 1/2, а в каких делить на 2?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Возможно это не от математики а от практики программирования идет. Когда работают в вещественных числах (float, double) то умножают на 0.5.

    А если какой-то особый случай и надо работать с рациональными дробями вида 3/15, 7/11 то подключают тип Rational и в нем получают более точный результат базовой арифметики чем например double.
    Ответ написан
    Комментировать
  • Какие существуют популярные библиотеки/фреймворки для создания нейросетей и машинного обучения для C++?

    veydlin
    @veydlin
    Мне никогда не жалко средств на свое любопытство
    Нейросети под питон это С++ с API под питон, на уровне питона скорость не нужна, возьми да полож данные из одного места в другое, настрой параметры, а дальше питон дернет ядро либы на С++ и будет скорость

    Если хочется писать вообще все на С++ то это будет НАМНОГО сложней (я знаю, ведь я пытался), думаю ты уже погуглил нейросетевые либы на С++ и обнаружил "разнообразие", если ты задаешь вопрос тут, потому что не смог найти решение, и если тебе даже посоветуют решение из недр интернета о котором никто не слышал, то какое у него будет комьюнити? У кого спросишь совета как решить проблему в либе про которую никто не знает? Как долго разработчики будут исправлять критичный баг на который ты нарвался и который остановил твою работу дальше?

    Пока ты будешь запускать тот же TensorFlow на С++ неделями, я за день напишу питон скрипт и просто запущу его из С++, и это будет работать одинаково

    Попробуй вот как, напиши сначала на питон нейросеть и запускай свое питон приложение из С++, а потом попробуй переписать на TensorFlow С++ API, и в процессе боли, страданий и потери времени поймешь, что это дает только боль, страдание и потерю времени

    Не стоит забывать, что стоит подбирать инструменты под задачу, а не натягивать все на один свой любимый инструмент
    Ответ написан
    3 комментария
  • В каких случаях логичней чтобы получить половину умножать на 1/2, а в каких делить на 2?

    Griboks
    @Griboks
    В старых книгах высота шрифта была фиксирована. Поэтому для деления дробью приходилось уменьшать шрифт числителя примерно до 60%. Если у вас большая формула, то наглядней было бы записать её 100% шрифтом, домножив в конце на 1/2.
    Ответ написан
    1 комментарий
  • В каких случаях логичней чтобы получить половину умножать на 1/2, а в каких делить на 2?

    @res2001
    Developer, ex-admin
    Есть такие микроконтроллеры, где нет аппаратного деления. Оно там реализовывается программно и работает оооочень долго. Вот прям заметно дольше. И если деление на константу идет в цикле, то в таком случае выгоднее один раз перед циклом вычислить 1/2, а затем умножать на результат деления. 1/2 тут для примера, конечно.
    С подобными процами лично сталкивался и был неприятно удивлен фактом такой просадки производительности на делении.
    В общем случае, даже на современных настольных процах от интел или амд операция деления выполняется дольше умножения. Счет идет на несколько процессорных тактов. Иногда это может играть роль.

    Если же речь о целочисленном делении на 2, то тут эта операция заменяется сдвигом вправо на 1 бит, что работает быстрее и умножения и деления. Впрочем подобные вещи компилятор сам в состоянии сделать при включенной оптимизации.
    Ответ написан
    Комментировать
  • Веб-разработка: Java или Python в связке с C++?

    Давай так:

    Java - работа либо в финтех компаниях, либо в огромных компаниях, которые делают софт для телеком, гос, логистических компаний под заказ.

    Python - это либо небольшие стартапы работающие с датой и автоматизацией (типа автопостинг в соцсети итд), либо крупные кастомерске компании типа Яндекса, Рамблера, Маил.ру итд.

    Ну а тут уже сам решай, что тебе ближе.
    Ответ написан
    Комментировать
  • Что нужно знать junior c++ разработчику?

    ThePyzhov
    @ThePyzhov
    iOS Ninja
    Так откройте вакансии на том же hh и посмотрите требования и з/п.
    Ответ написан
    Комментировать
  • Что нужно знать junior c++ разработчику?

    x67
    @x67
    Видимо С++. Ну и опыт работы с библиотеками, знакомство с винапи, qt
    Ответ написан
    Комментировать
  • В чём разница между нейро сетью, искусственным иннтелеллектом, машинным обучением, глубоким обучением?

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    НС - совокупность условий
    ИИ - результат работы НС
    МО - наполнение НС условиями
    ГО - совокупность методов МО
    Ответ написан
    Комментировать
  • Кто ещё производит ц.процессоры на пк? кроме интел и амд?

    Jump
    @Jump
    Системный администратор со стажем.
    Где найти список тех, кто ещё производит цп кроме интел и амд?
    Полный список вряд ли найдете, их же сотни, они постоянно появляются и исчезают.
    Samsung, Texas Instruments, МЦСТ, Qualcomm, MediaTek ,Nvidia, Huawei, Allwinner, Oracle, IBM........ и множество других.

    На пк?
    Сфера персональных компьютеров полностью занята двумя гигантами, и специально производить процессоры для этой сферы не выгодно, поэтому никто и не производит.

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

    есть ли какие нибудь видео или статьи о сборке пк не на "интел или амд"....
    Куча статей в интернете гуглится по Raspberry Pi
    Ответ написан
    4 комментария
  • Хочу заняться программирование БПЛА/ ИИ на БПЛА, с чего начать?

    trapwalker
    @trapwalker
    Программист, энтузиаст
    С лётных симуляторов. Выбирайте те, у которых есть API с телеметрией.
    Имея АПИ, можно пробовать писать код.
    Ответ написан
    Комментировать
  • Каую тему для курсовой можно взять по параллельным вычислениям?

    @vilgeforce
    Раздолбай и программист
    Берите криптографию! Перебор MD5/SHA1, полный перебор DES. И самое интересное - факторизация.
    Ответ написан
    Комментировать
  • Каую тему для курсовой можно взять по параллельным вычислениям?

    Nidora
    @Nidora
    Бонус 200 руб всем новым клиентам! VDS - 149 руб
    Вы только на 3 курсе. "Посерьезней" вам пока не нужно. Не усложняйте себе жизнь. Берите ту тему, которую знаете.
    Ответ написан
    Комментировать
  • Выбор игрового движка для C++?

    Taraflex
    @Taraflex
    Ищу работу. Контакты в профиле.
    Комментировать
  • Где найти интересные задачи по с++ разного уровня?

    Kolyagrozamorey
    @Kolyagrozamorey
    инженер-электроник службы ИТ ХАЕС
    Я от по рнр сам себе придумую задачи и пытаюсь их сделать. И по С++ можна также )
    Ответ написан
    Комментировать
  • Где найти интересные задачи по с++ разного уровня?

    bogolt
    @bogolt
    Не знаю что такое "озов" похоже на город какой-то, но тогда неясно отчего с маленькой буквы. Говорят в древности на Руси алфавит ( ну или буквица ) начинался с буквы Аз, откуда вероятно и пошли азы...

    По сути вопроса - любая программа длиннее тысячи строк будет представлять собой вполне себе задачу среднего уровня. Поставьте себе задачу и реализуйте ее на си++. Например напишите свой http/ftp сервер или клиент. Создайте простую игру, или удобное приложение.

    Можно конечно искать задачи где нужно "с помощью указателей" сделать что-либо, или "написать иерархию классов с виртуальными функциями" но имхо это полная ерунда. Она может помочь разве что закрепить синтаксис языка, но не дает понимания того зачем конкретная фича языка нужна.
    А вот создание собственной объемной программы - такое понимание дает в полной мере. Когда вы напишите 20й класс похожий на остальные, то зададитесь вопросом как это можно сделать проще, перечитаете учебник языка и поймете зачем нужны например шаблоны или виртуальные функции.
    Если до написания программы ( а лучше во время ) вы будете штудировать учебник языка - будет совсем хорошо.
    Ответ написан
    Комментировать
  • Где применяют python помимо веба и data science?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Питон активно применяется инженерами НЕ из сегмента It. Химиками. Физиками. Металлургами. Строителями.

    Жестокая ирония но часто его выбирают не по желанию а потому что ничего другого бесплатного под рукой не оказалось. Вот отсюда и проистекает его широкое распространение. А по рейтингам tiobe, он перегнал С++ и Java.

    Тоесть реально на вопрос "где" можно ответить - "везде".
    Ответ написан
    Комментировать
  • Где применяют python помимо веба и data science?

    fox_12
    @fox_12 Куратор тега Python
    Расставляю биты, управляю заряженными частицами
    - административные скрипты, devops (ansible к примеру)
    - нейронные сети
    - всякого рода парсеры и утилиты преобразования данных
    - обработка изображений (OpenCV)
    и т.п.
    это так - навскидку...
    Ответ написан
    Комментировать
  • Нейросети и машинное обучение?

    GavriKos
    @GavriKos
    Нейросеть - это некая сущность. Машинное обучение - это некий процесс. Есть обучение нейросетей. Есть нейросети без обучения. Есть обучение не нейросетей. Итого - это два разных понятия, но связать их можно.
    Ответ написан
    Комментировать