Skip to content

Instantly share code, notes, and snippets.

Dmitry Bravikov (Дмитрий Бравиков) bravikov

Block or report user

Report or block bravikov

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
@bravikov
bravikov / main.cpp
Created Mar 11, 2019
A test of Valgrind Massif utility.
View main.cpp
/* A test of Valgrind Massif utility.
*
* Usage:
*
* g++ main.cpp
* valgrind --tool=massif --time-unit=ms ./a.out
*
*/
#include <thread>
@bravikov
bravikov / child-reference.cpp
Last active Feb 18, 2019
A reference to an object of a child class
View child-reference.cpp
// A reference to an object of a child class
#include <iostream>
class A
{
public:
virtual ~A() {}
virtual void print() { std::cout << "A" << std::endl; }
};
@bravikov
bravikov / fibonacci.py
Last active Mar 9, 2018
Fibonacci number
View fibonacci.py
# run: python3 fibonacci.py
def fibonacci(n):
if n == 0:
return 0
if n < 0:
return int(-1**n) * fibonacci(-n)
current = 1;
previous = 0;
for i in range(1, n):
@bravikov
bravikov / qt-print-html.cpp
Last active Mar 1, 2017
Печать HTML-документа в Qt 5.8
View qt-print-html.cpp
#include <QDebug>
#include <QPrinter>
#include <QPrintDialog>
#include <QPrinterInfo>
#include <QWebEnginePage>
void MainWindow::on_printButton_clicked()
{
QPrinter * printer = new QPrinter();
@bravikov
bravikov / сортировка_по_расширению_файла.py
Last active Aug 29, 2015
Скрипт сортирует файлы в папки по расширению
View сортировка_по_расширению_файла.py
''' Рекурсивно получает список файлов в заданной папке. И копирует файлы в
другую заданную папку, сортируя их по расширению.
Для каждого расширения создается своя папка, имя которой совпадает с
расширением. Файлы без расширения помещаются в папку Прочее.
Если имена файлов с одним расширением повторяются, то для расширения создается
еще одна папка и к имени папки добавляется суффикс _N, где N равно 1, 2 и т. д.
Символьные ссылки игнорируются.
@bravikov
bravikov / SQLite.sql
Last active Sep 1, 2015
Запросы для SQLite
View SQLite.sql
-- Выдает таблицу чисел из заданного диапазона с определенным шагом.
-- Если шаг не кратен максимуму, то выдаст одно число больше максимума.
with numbers(n) as (
select -100 -- Минимум
union all
select n + 1 -- Шаг
from numbers
where n < 100 -- Максимум
)
select * from numbers;
@bravikov
bravikov / debug.c
Last active May 25, 2019
Вывод отладочных сообщений через USART STM32
View debug.c
/* Вывод отладочных сообщений через USART STM32.
* Работает как минимум на STM32F0, STM32F1, STM32F4, STM32F7.
* Работает как функция printf() стандартной библиотеки Си. */
#include <stdio.h>
#include <stdarg.h>
void debug(const char * format, ...);
void debug(const char * format, ...)
@bravikov
bravikov / russian-decimal-point.s
Last active Aug 29, 2015
MDK-ARM: запятая в качестве десятичного разделителя
View russian-decimal-point.s
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;
; Определение русского десятичного разделителя.
;
; Файл предназначен для программирования в среде Keil MDK-ARM.
;
; В настройках проекта на вкладке Asm в поле Include Paths
; требуется указать каталог, в котором расположен файл rt_locale.s.
; По умолчанию этот файл расположен в "C:\Keil\ARM\ARMCC\include".
;
@bravikov
bravikov / generate_numbers_from_0_to_99999.sql
Last active Dec 27, 2015
Генерирует числовую последовательность от 0 до 99999
View generate_numbers_from_0_to_99999.sql
select
n10000.n * 10000 + n1000.n * 1000 + n100.n * 100 + n10.n * 10 + n1.n as n
from (
select 0 n union select 1 union select 2 union select 3 union
select 4 union select 5 union select 6 union select 7 union
select 8 union select 9
) n1, (
select 0 n union select 1 union select 2 union select 3 union
select 4 union select 5 union select 6 union select 7 union
select 8 union select 9
You can’t perform that action at this time.