Ответы пользователя по тегу Программирование
  • Как определить частоты играющих струн?

    @res2001
    Developer, ex-admin
    После БПФ получаете комплексный массив, где каждый элемент - амплитуда определенной частоты.
    Частота по сути - это индекс массива.
    Но в элементе может быть не одна частота - количество частот в элементе массива зависит от частоты дискретизации сигнала и от длины БПФ: freq_length = sampling_rate / fft_length;
    Если sampling_rate == fft_length, то в элементе массива единственная частота.
    freq_length - разрешение элемента массива по частоте.
    Анализировать можно только половину массива (см. про частоту Найквиста), остальные отсчеты - это сопряжение первой половины. Соответственно реально получить частоты до sampling_rate / 2 - 1.
    В вашем случае, видимо, нужно найти энергетический спектр: сложить квадраты действительной и мнимой частей всех частот. Найти максимумы - это и будут ваши частоты аккорда - лучше построить график и посмотреть визуально, что получится.
    Ответ написан
    6 комментариев
  • Как вы программируете используя слепой набор?

    @res2001
    Developer, ex-admin
    Не использую слепой набор для кода, т.к. не нужно.
    А вы всегда пишете код как диктант? А думать когда?
    У меня не уходит много времени на именно написание, гораздо больше занимает разнообразный анализ, тестирование и отладка.
    Ответ написан
    3 комментария
  • Как в VBA дату преобразовать в количество часов?

    @res2001
    Developer, ex-admin
    Может хватит формулы?
    Вообще дата в екселе - это дробное число, где целая часть - количество дней от какой-то даты, а дробная - количество секунд или мл.сек. В общем если взять целую часть и умножить на 24 получится количество часов.
    Для VBA есть функция DateDiff, которая возвращает разницу между двумя датами в заданных интервалах. Например, чтобы получить разницу в часах между двумя датами:
    DateDiff("h", date1, date2)
    Ответ написан
    2 комментария
  • Программирование или что-нибудь другое?

    @res2001
    Developer, ex-admin
    Только профессией не требующей специальной квалификации можно заниматься не напрягаясь, освоив один раз основное движение и до пенсии его повторяя. Так что любая специальность требует в дальнейшем развития. Где-то это проще, где-то сложнее.
    Программирование не самая простая штука, но и не сильно сложная - вы же уже делаете сайты, так что практически программист. Есть вещи и сложные, но туда можно не соваться, если нет желания.
    В основном программирование - рутина. Но и везде так же - жизнь это не вечный праздник - праздники по расписанию (посмотрите в календарь), а в остальные дни - рутина, привыкайте. И да, если каждый день - праздник, то и праздник становиться рутиной :-)
    Большинство задач в программировании довольно типовые, а потому рутинные, но если захотеть можно найти и интересные задачи, но там, обычно, есть некоторые сложности, поэтому придется напрячься. Кроме того себя можно развлекать и самому, например осваивать новые подходы и технологии в программировании, а можно просто бухать.
    Если получается программировать и нет отвращения - занимайтесь этим. Если есть что-то что получается лучше или интереснее, то лучше переключиться туда.
    Но попытайтесь подумать на шаг вперед - сможет ли ваша профессия обеспечить вам нормальный уровень жизни.
    Кстати, если что, уровень жизни то же можно подвигать в разные стороны :)
    Ваша жизнь, выбирайте.

    PS: Ну и C# - это не совсем "для телефонов". Когда вы последний раз видели смарт под виндой? Они конечно есть в природе, но это экзотика, имхо. Для телефонов больше Java подходит.
    Ответ написан
    3 комментария
  • Есть ли в российских ГОСТах (ЕСПД) определение "дистрибутив программы" или схожее?

    @res2001
    Developer, ex-admin
    В "современных" ГОСТах ЕСПД и ГОСТ 34 нет понятия дистрибутива, на сколько я знаю.
    Но вам никто не мешает ввести это понятие самому, описать процедуру установки ПО в рамках документа "Описание программы" или "Описание применения", в руководстве программиста или системного программиста описать процедуру создания дистрибутива.
    Ответ написан
    2 комментария
  • Что вы думаете насчет книги Брайана Кернигана "Язык программирования С"?

    @res2001
    Developer, ex-admin
    Книга Дейтелов то же очень не плоха. Но там и С++ то же есть. В K&R С++ нет.
    Ответ написан
    Комментировать
  • Что читать после Лафоре?

    @res2001
    Developer, ex-admin
    Начинайте уже писать.
    Ответ написан
    6 комментариев
  • Случайное число(своя функция) и вопрос про случайные события?

    @res2001
    Developer, ex-admin
    Сила броска то же случайная величина, если бросает не ангажированный человек. Начальное расположение монеты - то же. Так что эти факторы только добавляют "случайности".
    Ответ написан
    Комментировать
  • Какой алгоритм нейронной сети подойдет?

    @res2001
    Developer, ex-admin
    Видимо какой-либо алгоритм экстраполяции вам подойдет больше, чем нейронная сеть.
    Ответ написан
    5 комментариев
  • Когда применяется локаль?

    @res2001
    Developer, ex-admin
    А ты попробуй сделать в винде консольное приложение на С++ с выводом "Привет мир" по русски, сразу отпадут вопросы про локаль.
    Ответ написан
    Комментировать
  • Как архитектурно решить проблему нескольких источников стран-городов-индексов?

    @res2001
    Developer, ex-admin
    Кэшируйте.
    Возможно лучше даже не кэшировать, а сделать свою БД, куда информация будет попадать от запросов (если в базе отсутствует). В этом случае нужно будет сделать автономный сервис, который раз в день, например, будет обновлять информацию в базе.
    В случае своей БД при падении источника вы все равно останетесь в работоспособном состояни.
    Ответ написан
  • Где и как хранится имя переменной?

    @res2001
    Developer, ex-admin
    Имя переменной нигде не хранится.
    Если по простому то: компилятор преобразовывает имя переменной в адрес и далее везде где было имя в коде появляется адрес.
    Если по сложнее, то для стековых переменных (локальные переменные функции) - это будет даже не адрес, а смещение относительно начала стека функции. А начало стека функции записано в один из регистров процессора. Адрес локальной переменной получается сложением регистра и смещения.
    Для глобальных переменных - адрес. Но и тут несколько сложнее, т.к. реальный адрес появляется только после того как ОС загрузит программу в память и тут работают в паре загрузчик ОС и компилятор.
    Ответ написан
    Комментировать
  • Как обработать большое количество данных за минуту?

    @res2001
    Developer, ex-admin
    Переложить обработку на сервер БД, скриптом PHP только стартовать и получать результат.
    Ответ написан
    Комментировать
  • Как оптимизировать программу на с++?

    @res2001
    Developer, ex-admin
    Само решение задачи оптимизировать бесполезно, т.к. тут на столько все просто, что любые оптимизации дадут прирост в 1-2 процессорных инструкции, а это в любом случае будет меньше 1 млсек.
    Попробуйте исполнить ваш тест несколько раз и вычислить среднее время, если это возможно.
    Или вставьте в свою программу вычисление времени выполнения и больше не беспокойтесь по этому поводу: www.cplusplus.com/reference/ctime/clock/?kw=clock
    Ответ написан
    Комментировать
  • Как узнать из-за чего Win 10 зависает(грузится медленно)?

    @res2001
    Developer, ex-admin
    В журнал винды загляните, там порой появляется полезная информация.
    Ответ написан
  • Можно ли сделать массив меток goto?

    @res2001
    Developer, ex-admin
    Возможно setjmp/longjmp это то что вам нужно?
    Ответ написан
    Комментировать
  • Как можно преобразовать число из 3 байт в число из 2 байт?

    @res2001
    Developer, ex-admin
    Преобразовать можно - отрезав лишний байт, но видимо этот способ вам не очень подходит.
    А для других способов нужно больше информации - какой язык программирования, что значит "адрес является его серийным номером", что это за адрес у вас такой, как вы потом будете использовать эти 2 байта?
    Ответ написан
    Комментировать
  • Что изучать для написания своего кроссплатформенного приложения?

    @res2001
    Developer, ex-admin
    Stdlib, boost, Qt
    Ответ написан
    Комментировать
  • Как вести историю изменений сущностей в системе?

    @res2001
    Developer, ex-admin
    В таблицу где лежит информация о сущности добавьте поле DBEG as datetime.
    При создании сущности в это поле заносите текущую дату/время. При изменении сущности - не меняете запись сущности, а добавляете новую запись с текущим значением даты/времени в DBEG. Отбор текущей сущности будет происходить так:
    select top 1 * from table where ID= order by DBEG desc
    Таким образом сохраняется вся история, ну и не плохо бы иметь интерфейс для просмотра истории.
    Это общий подход. Если нужно реализовать хранение изменений для определенных аттрибутов сущности, то подобные аттрибуты нужно выделить в отдельную таблицу и в этой таблице применить аналогичный подход, при этом сама сущность будет в единственном экземпляре, а вот ее некоторые аттрибуты будут с историей.
    Аттрибуты можно выделять в таблицу по типам данных, допустим отдельная таблица для целых, строк, вещественных, дат и т.п. Либо одна общая таблица с соответствующими полями для каждого типа данных.
    Ответ написан
    1 комментарий
  • На каком языке/технологии можно без танцев с бубном создать простенькое GUI приложение для работы с docx?

    @res2001
    Developer, ex-admin
    VBA for Word
    Небольшую форму, которая будет запускаться при создании нового документа можно сделать макросом в самом шаблоне документа. Это будет проще всего.
    К тому же среда разработки встроена в продукты MS Office, студии не требуется, язык скриптовый и простой.
    Ответ написан
    Комментировать