Dyzzet|
C++ Data Science Алгоритмы Темы · Блог · YouTube
Колонками
Постранично
20 августа
Книга Игоря Иванова «Объясняя науку»

Игорь Владимирович Иванов. Объясняя науку: руководство для авторов научно-популярных текстов

242 страницы. Альпина нон-фикшн, 2021

Небольшая интересная книга с необычной обложкой.

Содержание:

  • Для кого эта книга
  • Предмет обсуждения
  • Лестница уровней понимания
  • Насколько глубоко надо быть в теме
  • Сферический читатель в вакууме
  • Структура научно-популярной новости
  • Сенсации на ровном месте
  • Технология объяснения: суть
  • Технология объяснения: стиль и приёмы
  • Упрощения и аналогии
  • Ссылки
  • Постпродукционное сопровождение
  • Примеры

Возможно, самая большая проблема книги — то, что название не совпадает с содержанием. Вернее было бы сказать «Объясняя новости науки». Нас трижды предупреждали ещё в аннотации, но мы не слушали.

Читать далее →
Конвертер типа float с визуализацией


Примеры: 3.5; 0.1; 0; 3.4028234663852886e38; Infinity; NaN

(−1) · · 2 − 127−126 = 2 =≈  · 10

|{x : x ∈ float ∧ 2 x 2}| = 8 388 608
|{x : x ∈ float ∧ 0 ⩽ x < 2−126}| = 8 388 608
|{x : x ∈ float ∧ −2−126 < x ⩽ 0}| = 8 388 608
|{x : x ∈ float ∧ 2 ⩽ x < 2}| = |{x : x ∈ float ∧ −2 ⩽ x < −2}| =
18 июня
Задача о дождевой воде. Решаем с помощью диапазонов

Дан ряд целых чисел \(a_i \geqslant 0,\) \(i=\overline{1,n}\). Числа символизируют высоту стен. Сверху идёт дождь, и вода скапливается в ячейках между стенами. В каждом столбце скапливается \(w_i\) воды. Нужно найти количество ячеек с водой: \[W=\sum_{i=1}^{n} w_i.\]

Пример: \[a=(2, 4, 1, 3, 2, 5, 2, 1, 3, 1).\]

⬛⬛⬛⬛⬛⬜⬛⬛⬛⬛
⬛⬜🟦🟦🟦⬜⬛⬛⬛⬛
⬛⬜🟦⬜🟦⬜🟦🟦⬜⬛
⬜⬜🟦⬜⬜⬜⬜🟦⬜⬛
⬜⬜⬜⬜⬜⬜⬜⬜⬜⬜

В столбцах скопилось воды \(w=(0,0,3,1,2,0,1,2,0,0),\) в сумме \(W = 9.\)

Читать далее →
12 марта
Полиморфная кухня — 6. Умные указатели

В C++11 появились три вида умных (интеллектуальных) указателей: std::unique_ptr, std::shared_ptr и std::weak_ptr. Они избавляют от заботы освобождать память и другие ресурсы (если с ними правильно обращаться).

struct Base
{
    virtual void print() const noexcept
    {
        std::cout << "Base (const)" << std::endl;
    }
 
    virtual void print() noexcept
    {
        std::cout << "Base" << std::endl;
    }
 
    virtual ~Base() = default;
};

Читать далее →
4 марта
День дельфийского сурка

Уникальный в каком-то смысле труд. Шесть книг по программированию. Четыре из них — по языкам Pascal и Delphi, а две другие — по языку Python. И хотя тема не C++, мимо названия «Полезное программирование» было трудно пройти, да и сам автор время от времени высказывается о C++.

ЭБС «Лань»

«Лабиринт»: Комлев

Николай Юрьевич Комлев. Полезное программирование

256 страниц. СОЛОН-пресс, 2016

Аннотация обещает сделать из читателя большого профессионала.

«Книга для тех, кто умеет программировать и уже готов этим зарабатывать.

Курс молодого, но профессионального программиста. Практические советы.

Что пригодится вам из пройденного и сданного. Что вы будете программировать сначала, а что позже, когда наберётесь опыта. К чему ещё можно применить ваш программистский талант, чтобы руководство одобрило и поощрило. Кратко, доступно, убедительно».

Читать далее →
15 февраля
Вымышленные особенности указателя this

В Рунете полно сайтов о программировании, в основном там много статей для новичков. Такие сайты могут выглядеть модно, но работа авторов и редакторов (если они вообще есть) часто недотягивает до приличного уровня.

Интересные особенности указателя this

Небольшой, но показательный пример. Автор заявляет, что «this является const указателем».

class Foo {
private:
    int x;
public:
    Foo(int x = 0) {  this->x = x; }
    void change(Foo *foo) { this = foo; }
    void print() { cout << x << endl; }
};

И никого не смутило, что компилятор прямо говорит о причине:

«Если мы запустим (скомпилируем. — DZ) код, то получим ошибку компиляции в методе change (lvalue required as left operand of assignment)».

Тип указателя this — либо Foo*, либо const Foo*. Он не может быть Foo* const или const Foo* const. А присвоить ему ничего нельзя потому, что он не является левосторонним значением (lvalue); по-простому — не может стоять слева от знака присваивания.

Читайте хорошие книги и сайты.

8 февраля
Модальные окна

Однажды понадобилось спроектировать несколько модальных окон, нужны были референсы. Я решил посмотреть на Microsoft Word, проверенный продукт. И разверзлась бездна.

Предлагаю посмотреть с небольшим количеством комментариев.

Главная

Уже первое окно показалось странным. Выравнивание блока Font разваливается.

Читать далее →
9
8 7 6 5 4 3 2 1
© MMXI—MMXXIII. RSS. Поддержать сайт
Светлая тема / тёмная тема