Лупа для пайки
В новогодние праздники я так и не удосужился опробовать новый паяльник, сел сегодня. Жена на Новый год подарила конструктор для сборки радио, опробовал на нём.
Ну что я могу сказать? Зрение уже не то, мне нужна лупа. Запаял полтора резистора наощупь, начал паять четвёртую ножку, не припаивается нормально. У основания олова нет, это я разобрать могу, но толком ничего не вижу, тыкаю припоем почти наугад.
Интересно, есть ли обзоры луп для паяния, надо бы посмотреть. Хочется купить
99 бутылок: калькулятор bc
Разбирал одну старенькую научную статью с некоторым количеством математики, а внутри увидел вычисления на bc.
Не особо с ним знаком, но несколько раз пользовался, даже не вникая что он умеет. Честно говоря, не помню зачем он мне тогда понадобился, наверное надо было
В общем, оказалось, там внутри целый язык программирования, с циклами, ветвлениями, локальными переменными, строками, массивами и числам. Поддерживаются даже пользовательские функции. Решил попробовать написать на нём очередную «песню о пиве».
82. bc — интерактивный интерпретатор
/* Beer song. Evgeny Stepanischev, Jan 2025 */
define void bottles(b) {
if (b) print b else print "No"
" bottle"
if (b-1) print "s"
" of beer"
}
for(beer = 99; beer;) {
bottles(beer); " on the wall, "
bottles(beer); print "!\n"
print "Take one down, pass it around,\n"
bottles(--beer); print " on the wall!\n\n"
}
print "No more bottles of beer on the wall,\n"
print "No more bottles of beer!\n"
print "Go to the store and buy some more,\n"
bottles(99); " on the wall!"Единственное, что вызвало у меня затруднение — это как сделать так, чтобы функция ничего не возвращала. Дело в том, что функции в bc
Никаких других сложностей с этой программой у меня не возникло, язык простой, хорошо продуманный, лёгок в освоении.
Добавлено позднее: как оказалось, у языка есть свои особенности о которых нелишне знать. Например, подключение математической библиотеки меняет точность, определяемую переменной scale, что влияет, например, на операцию вычисления модуля, она начинает работать иначе.
Другая странность — операции сдвига работают в десятичной системе. Не понимаю какой от этого толк. Например, 1<<2 даст 100.