• Каков ответ логической задачи?

    @kazmiruk
    Задача вполне банальна для собеседований (спрашивали аналогичное в Яндексе пару лет назад, только про стакан и размножающиеся бактерии, но сути не меняет). Ошибка в постановке задачи. Если бы в самом вопросе четко звучало, что каждый день количество бумаги увеличивается вдвое, то вполне логичен ответ, что половина будет на n-1 день, так как количество бумаг в последний день N равно x, а в предпоследний x/2 (чтобы при увеличении вдвое получилось x).
    Ответ написан
    2 комментария
  • Поможете решить задачку на javascript?

    Lynn
    @Lynn
    nginx, js, css
    У вас задача найти наименьшее общее кратное 20 чисел. Ну так и нужно его искать, а не заниматься бессмысленным перебором.

    Вот, например, самое простое решение в лоб: jsfiddle.net/moq36zrg/3
    Хотя в википедии есть и другие алгоритмы https://en.wikipedia.org/wiki/Least_common_multipl...
    Ответ написан
    Комментировать
  • Что представляет собой ссылка?

    Nipheris
    @Nipheris Куратор тега C++
    Ну конечно что ждет от вас препод, нам тут все равно не угадать. Я бы как раз и ответил, что это имя для переменной. Я не соглашусь с некоторыми ответами здесь, т.к. не всегда для ссылки компилятор будет выделять память - локальная ссылка на локальную же переменную как раз таки будет просто вторым именем в таблице идентификаторов компилятора при компиляции программы.

    Главная фишка ссылки в том, что это абстрактное l-value, т.е. сущность, в которую можно что-то присвоить (если базовый тип - не константный). То есть ссылка всегда оборачивает какой-либо адрес в памяти, причем на время жизни ссылки этот адрес постоянен (ссылку нельзя "переставить" на другую область памяти). Именно поэтому ссылки всегда нужно инициализировать.
    ЧЕМ инициализировать - другое дело. Можно переменной, а можно - разыменованным указателем.

    В зависимости от ситуации технически ссылка может быть реализована по-разному. Если это ссылка на лок. переменную, то большинство компиляторов просто добавят себе новое имя в таблицу. Никакой дополнительной памяти выделяться не будет. Если же ссылка приходит как параметр или отдается как возвращаемое значение - то тут скорее всего понадобится реализовать ее как указатель (указатель передавать/возвращать). Однако, еще раз напомню: ссылка скрывает технические подробности, вы с ней работаете как с обычной переменной. Более того, она скрывает настолько, что даже может продлевать жизнь временным объектам.

    Теперь попробуем сранить ссылку и другие сущности в языке.
    Определение ссылки vs определение обычной переменной:
    определение обычной переменной это всегда выделение памяти и добавление нового имени в таблицу компилятора для этой области памяти. Определение ссылки - это прежде всего ОПРЕДЕЛЕНИЕ ИМЕНИ, а уже в тех случаях, когда привязку этого ИМЕНИ к АДРЕСУ невозможно осуществить во время компиляции (т.е. например в случае передачи ссылки как параметра функции), то для реализации ссылки применятся указатель. Важно, что компилятор сам выбирает способ реализации поведения ссылки. В любом случае, назначение ссылки - обернуть в l-value уже ВЫДЕЛЕННУЮ память (совершенно не важно, на стеке, куче или где-то еще). Новой памяти для хранения значения целевого типа НЕ выделяется. Если у вас есть переменная и ссылка/несколько ссылок на нее, то при присвоении значения через любую из сущностей вы будете менять одну и ту же область памяти.

    Ссылка vs указатель:
    - самое важное отличие - указатель САМ ПО СЕБЕ является переменной. Под указатель int* компилятор выделит память также, как и под int. Указатель существует сам по себе, ему (если он не const) можно присваивать новые значение, можно присвоить nullptr. Можно даже хранить в нем совершенно некорректный адрес и все будет ок до тех пор, пока вы не разыменуете его. Только когда вы разыменовываете указатель, вы превращаете его в l-value, и с этого момента между ним и ссылкой разницы нет.
    - второе отличие - собственно необходимость разыменования. Т.к. указатель - самостоятельная переменная, для обращения по адресу, на который указатель смотрит, нужно сделать ему *p. Именно в этот момент компилятор начинает рассматривать значение указателя как адрес в памяти, с которым вы собираетесь что-то сделать (если быть совсем точным, но не в момент разыменования, а при попытке чтения/записи. В принципе вы можете даже инициализировать ссылку некорректным указателем, и программа не упадет, пока вы не попытаетесь читать/присваивать по этой ссылке).
    - с учетом сказанного, ссылку можно грубо считать "константым указателем с автоматическим разыменованием". Грубо, т.к. согласно стандарту есть нюансы, такие как вышеупомянутое продлевание жизни временным объектам.
    Ответ написан
    Комментировать
  • Как анализировать вакансии front/-backend разработчиков?

    DevMan
    @DevMan
    не стоит удивляться: в таких вакансиях расставляют требования точно так же как и вы теги к своему вопросу.
    Ответ написан
    24 комментария
  • Региональные вузы/компании готовящие программистов?

    newross
    @newross
    Product owner
    Крутые программисты сами себя делают, а не вузы их.
    Ответ написан
    Комментировать
  • .innerHTML не работает?

    bagerman
    @bagerman
    У вас неправильный поиск элемента: нужно брать класс, а не id. Или в html коде замените класс на id
    Ответ написан
    5 комментариев
  • Как сделать два события на одну кнопку?

    evnuh
    @evnuh
    Поиск Гугл помог мне, впусти и ты его в свой дом
    Вы в курсе, что вы ничего не понимаете в программировании?
    Вы в курсе, что спрашиваете про задачу для браузера, а приводите код для сервера?
    Вы в курсе, что теги  css и jquery абсолютно не при чём и вас за это накажут?
    Вы в курсе, что мы не знаем, что это у вас за php функции и что они выводят?
    Вы вообще зачем занимаетесь тем, в чём не разбираетесь?
    Ответ написан
    1 комментарий
  • Что входит в понятие азы/основы/база/бекграунд/фундаментальные знания программиста?

    @LiguidCool
    Подобные вопросы задают стабильно минимум пару раз в месяц. Вам подсказать куда идти?

    0f4a2c6ddb7e454cb59c7f38a85c3a7f.png
    Ответ написан
    Комментировать
  • Возможно ли начать работу программистом в 18 лет?

    @Neonoviiwolf
    Flutter developer
    У меня знакомый, после n-го лет работы по ремонту принтера, пришёл в контору, где требуется java программист, сказал, что нихрена не знает, ток прочёл пару книг по java, но готов вкалывать. Ответом было, что "спасибо, что голову не стал морочить, приходи на след. неделе, найдём тебе ментора, будет минимальный оклад (что-то около 17к), посмотрим, что выйдет". Уже год знакомый там работает, очень доволен. Так что не всякий работодатель возьмёт, но найти работу можно, на нормальную зп стоит расчитывать хотя бы через год, а так после испытательного 20-30к без опыта - норм
    Ответ написан
    3 комментария
  • JavaScript заменит php или ASP.NET?

    opium
    @opium
    Просто люблю качественно работать
    Ахахахаха и много вы написали хороших десктопных приложений на жс? А интернет магазинов? Так рассуждать всем бы на ассемблере программировать.
    Жс убог и ограничен о какой то его универсальности речи вообще не идёт
    Ответ написан
    29 комментариев
  • Как научиться грамотно писать код?

    AxisPod
    @AxisPod
    Прежде чем писать грамотно код, надо грамотно разрабатывать архитектуру. Почитайте для начала Гради Буча. Разберитесь с шаблонами проектирования. Делайте друг у друга code-review максимально придираясь к коду. А дальше пойдет.
    Ответ написан
    1 комментарий
  • Для чего нужна репутация на тостере?

    @sitev_ru
    sitev.ru - мой блог ...
    У меня половина вопросов и половина ответов. Мне помогают решить некоторые вопросы, я тоже иногда отвечаю... Да просто интересно... Хотя на стековерфлоу система рейтинга прикольнее)
    Ответ написан
    Комментировать
  • Для чего нужна репутация на тостере?

    kompi
    @kompi
    nullstack devoops
    Фапать. Люди всегда были падки на систему рейтингов, которая позволяет им выделиться и самоутвердиться среди себе подобных.
    Ответ написан
    2 комментария
  • Что нужно для безболезненного перехода на linux?

    abs0lut
    @abs0lut
    Что нужно для безболезненного перехода на linux?

    Нужна виртуальная машина, чтобы попробовать работать, прежде чем полностью переходить на GNU/Linux.
    Нужна мотивация, ибо "линукс ради линукса" - плохой повод подружиться с ОС.
    Нужно быть готовым к проблемам и трудностям, и, как следствие, уметь гуглить решения проблем.

    Порекомендуйте литературы

    Порекомендую, хотя все чаще встречаю мнение, что она не оправдывает себя, и вся суть в практическом опыте.

    Shotts W. E. Jr. - The Linux Command Line - A Complete Introduction - 2012
    Barrett D.J. - Linux Pocket Guide - 2012
    Brian Ward - How Linux Works - What Every Superuser Should Know (2nd edition) - 2014
    Lewis J.K. - Linux Utilities Cookbook - 2013
    Linux Bible - 8th Edition
    Скотт Граннеман - Linux. Необходимый код и команды. Карманный справочник - 2010
    Эви Немет - Unix и Linux. Руководство системного администратора - 2012

    не лазить по пустякам на форумы

    Думаю, на форумах Вы будете проводить несколько больше времени, чем думаете.
    Ответ написан
    2 комментария
  • Что нужно для безболезненного перехода на linux?

    @AlikDex
    запастись терпением. Первое время колбасить будет жостка.
    А так, куча форумов формата вопрос - ответ. Нынче с этим проблем нет.
    Ответ написан
    Комментировать
  • Может ли сотрудник при увольнение забрать (удалить) все свои наработки?

    opium
    @opium
    Просто люблю качественно работать
    Детство какое то , откажитесь от таких глупостей, если хотите получить зарплату достаточно обратиться в трудовую инспекцию, обычно перед этим стоит зайти к главному бухгалтеру и посоветоваться как правильно обратиться, обычно в течении часа придет директор решать этот вопрос, так как обращение в трудовую инспекцию зачастую влечет кучу полных проверок бухгалтерии и кадрового учета, что для некоторых контор смертельно.
    А если ещё и зп в чериную платят то вообще.
    Ответ написан
  • Как сделать Random в T-SQL с отрицательными и положительными числами?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    100-Rand()*200
    Ответ написан
    Комментировать
  • Есть ли программа способная скачивать картинки из диапазона ссылок?

    Moskus
    @Moskus
    Скачать и установить wget, выполнить в командной строке вот такое:
    for %L in (a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z) do for /L %D in (0,1,9) do wget http://site.ru/%L%D

    По вкусу добавить параметры wget для формирования имени локального файла (если, например, сайт отдает всегда какой-нибудь дикий get_image.php, как это делают многие CMS) и прочих фокусов.

    Если оформлять это в виде .bat-файла, то заменить одинарные проценты двойными.

    Приведенный выше код просто использует два вложенных цикла FOR. Информация по синтаксису FOR, например, вот тут: ss64.com/nt/for.html
    Ответ написан
  • Не помешает ли мне изучение PHP потом перейти на RoR?

    scherbuk
    @scherbuk
    А есть какая то разница на жигулях или на волге ездить? главное ПДД знать
    Учить надо наверное все таки шаблоны программирования там разные как по мне
    Ответ написан
    2 комментария
  • Как установить SSL сертификат корректно?

    iwqn
    @iwqn Автор вопроса
    Программист-самоучка
    Ошибка при регистрации получалась потому, что я не расшифровывал полученный в strtssl ключ. Нужно было воспользоваться визардом в их тулбоксе или самому в командной строке дешифровать ключ, и только тогда его регистрировать
    Ответ написан
    Комментировать