Thursday, March 27, 2008

СТАЦУ. 10

Так как многие в последнее время не часто посещают глупые пары, сообщаю, что за перевод годов рождения всех родственников в двоичный, троичный, восьмиричный, hex, Айкена, Грея, с избытком 3, Джонсона можно получить 10 баллов.

Если с hex все просто - есть калькулятор, то с двоичным проблема (не хватает дигитов и калькулятор обзывает на букву "е"). Поэтому я написал скриптик на питоне (брать тут http://python.org/ftp/python/2.5.2/python-2.5.2.msi примерно 10мб).

Сам код:

def binary():
    b = divmod(dec1, 2)
    ans = str(b[1])
    c = int(b[0])
    while c >1:
        d = divmod (c, 2)
        ans += str(d[1])
        c = int(d[0])
    ans += str(c)
    return ans

print 'Enter DEC number to convert to BIN: '
dec = raw_input()
dec1 = int(dec)
bin = binary()
print bin
raw_input()

Число надо бут записать в обратном порядке. Скоро постараюсь сделать и для перевода остальных.

6 comments:

  1. Научился компилить, поэтому программа в архиве .7z на нашем ящике. Тема письмаЖ BIN

    ReplyDelete
  2. а терь новая версия преобразователя 2, 3, 8... тема письма BIN-3-8

    ReplyDelete
  3. малек не в тему, но смешно и ПОЛЕЗНО:
    xxx: нашел способ учить физику: если включить плейлист, поставить ноут на колени, и положить учебник на экран, то вполне читабельно
    yyy: это организм еще не адаптировался и не понимает, что его наебывают

    ReplyDelete
  4. за прогой сюда http://psf115.blogspot.com/2008/03/code-conv-v01.html

    ReplyDelete
  5. А как в Айкена перевести большие числа, например, 1987?

    ReplyDelete
  6. вроде такой алгоритм: если число <4, то как в двоичном, если больше, то добавляешь 6 и переводишь в двоичный.

    ReplyDelete