All streams
Search
Write a publication
Pull to refresh
-28
@longclapsread⁠-⁠only

User

Send message
К чему географию знать, программист сисадмин извозчик куда скажешь довезёт.
Фонвизин, Недоросль.

В любой области востребованы специализированные решения. Просто не все их осваивают, дилетанты обходятся чем попало.
Может, напишите об этом пост? Было бы любопытно.
Теория вероятностей оперирует неточными данными, но это неточно.

Простите, не удержался — это меня как математика покоробило )
Паралона-паралона, зови меня так...
В спелчекер не умеете? Книжку писать хочите? Так найдите себе редактора, хоть на Upwork.

ps Кроме шуток — количество опечаток, синтаксических и пунктуационных ошибок, рассогласованных предложений (проезжая на поезде, с меня слетела шляпа) зашкаливает.
К чему такие сложности:
def get_fraction(number, precision):
    return int(number % 1. * 2. ** precision)

И зачем вообще так мучаться, ведь можно то же самое сделать проще и надёжней:
f = 12345.6789
bb = struct.pack('!II', int(f), get_fraction(f, 32))
g = struct.unpack('!Q', bb)[0] / 2 ** 32
print(g)

Разбивая октет на два 32-разрядных, вы вручную задаёте порядок их следования — это прямая дорожка в ад )
Вполне корректно: модуль struct позволяет явно задавать порядок байт, в данном случае использован модификатор ! в дескрипторе _FORMAT.
The form '!' is available for those poor souls who claim they can’t remember whether network byte order is big-endian or little-endian.

Размеры полей указаны там же (в _FORMAT).
Хех, делал когда-то такое:
def factor(x):
    def f(y, q):
        while not y % q:
            y //= q
            r[q] = r.get(q, 0) + 1
        return y

    r, p = {}, 7
    x = f(f(f(x, 2), 3), 5)
    while x >= p * p:
        for s in 4, 2, 4, 2, 4, 6, 2, 6:
            if not x % p:
                x = f(x, p)
            p += s
    if x > 1:
        f(x, x)
    return r

def divisors(x):
    r = [1]
    for p, n in factor(x).items():
        t = -len(r)
        for _ in range(n):
            for _ in range(t, 0):
                r.append(r[t] * p)
    return r

# посмотрим, как оно

@timer
def main(x):
    print(sum(divisors(x)))

main(10 ** 9)
main(999983 * 1000003)  # два больших простых

Выхлоп
2497558338
main , sec: 0.000041
999987999936
main , sec: 0.032282
Всего две шестерни, как на синглспидах

Это звёзды, друг мой, а шестерёнки — они в головах иных местах крутятся.
В общем, преподаватель из вас с таким отношением к студентам вышел бы очень плохой.
Да ладно — я вот вам, с вашим-то профилем, сообщил нечто новое. Хоть я и не преподаватель.

А может вы правы, и новые веяния педагогики предписывают поощрять небрежность. И гнать от себя мысли вроде «если студент так нарисовал — что у него в голове»? Неважно, уяк-уяк — и в продакшн.

Автору, после вашего заступничества — полное оправдание.
Это легко может быть эффект от корпусирования
А может и не быть:

image

в чем тогда ваша проблема
Да ни в чем. Впрочем, вам со стороны виднее.
Я не стану наставаить на своём. Возможно, в соответствующем ГОСТе так и написано: «при начертании значка полевого транзистора взаимное расположение выводов не регламентируется» — я ГОСТа не читал. Но осуждаю )
Это в детских книжках они одинаковые. А в реальности паразитные ёмкости затвор-исток и затвор-сток иногда почему-то разные, вот первый попавшийся даташит.
Легко понять, проследив путь сигнала от входа до выхода, что входной каскад (полевики, выделены на схеме салатовым) — неинвертирующий. Истоковый повторитель, стало быть. Но если на рукописной схеме полевики нарисованы так коряво, что сток от истока не отличить, то на аккуратной схеме они аккуратно перепутаны.
Резюме: автор оригинальной статьи — балбес, и зачета по устройству операционников не сдал бы.
Запуск Блендера — это великий почин, но есть ещё кое-какие шероховатости )
При попытке развернуть ReactOS под VirualBox и установить VBoxGuestAdditions получаю стабильный BSOD. Вики с сайта ReactOS читал — не помогает. Хост — Ubuntu X64.
Может, имеет смысл выложить vdi-образ с установленным Additions, а? Или хотя бы тестировать Additions, а уж Блендер мы как-нибудь на хосте…
Можно и без неё, но при попадании в кэш будет немного медленнее.
Это — ленивый алгоритм с кэшем, он проверяет, нет ли уже значения для s в кэше.
def cost(s, cache=[0, 0]):
    if s >= len(cache):
        for i in range(len(cache), s + 2, 2):
            c = cache[i // 2] + 1
            cache += c, min(c + 1, 5)
    return cache[s]

Лучше бы Eric Lippert восхищался питоном молча.
Можно еще ускориться на вычислении 10000 троек раз эдак в 15 )))

from math import sqrt

def triples():
    c = 4.
    while True:
        a, b = sqrt(c * 2. + 1.), c
        c += 1.
        сс = c * c
        while a < b:
            if a.is_integer():
                yield int(a), int(b), int(c)
            b -= 1.
            a = sqrt(сс - b * b)
Музыка подбирается прям под настроение
Выбираю альбом для прослушивания (впервые или повторно — неважно) — отыгрывает и запускает шарманку из полудюжины одних и тех же заиграных хитов, которую (шарманку) я тут же гашу.
Но нет — ЯМ ничему не учится (
Ваше утверждение фактически неверно, ввиду того, что сей график симметричен относительно прямой Y=X, а вовсе не вертикали X=1.

Information

Rating
Does not participate
Registered
Activity