powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Каким образом перевести число в 36 разрядную систему ??
6 сообщений из 6, страница 1 из 1
Каким образом перевести число в 36 разрядную систему ??
    #34165777
mazday
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вообщем то вопрос уже задан так сказать, мне нужно перевод месяца и просто даты в 36 разрядную систему,

если кто поможет огромнейшее спасибо
...
Рейтинг: 0 / 0
Каким образом перевести число в 36 разрядную систему ??
    #34166141
PaulWist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Например http://forum.foxclub.ru/read.php?5,110302,110311#msg-110311
...
Рейтинг: 0 / 0
Каким образом перевести число в 36 разрядную систему ??
    #34166266
mazday
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если честно то не понял ровнным счетом ничего.....


мож кто помогет плииииззззз
...
Рейтинг: 0 / 0
Каким образом перевести число в 36 разрядную систему ??
    #34166360
AleksMed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mazdayесли честно то не понял ровнным счетом ничего.....
мож кто помогет плииииззззз
Тяжелый случай.
И чтож ты хочешь дальше?
...
Рейтинг: 0 / 0
Каким образом перевести число в 36 разрядную систему ??
    #34166473
PaulWist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
переведи дату в Юлианское исчесление, а дальше по общей схеме.
Код: plaintext
?SYS( 11 , DATE())
...
Рейтинг: 0 / 0
Каким образом перевести число в 36 разрядную систему ??
    #34166487
alvao
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Перевести из одной системы исчисления в другую можно число. Для начала надо решить каким образом переводить "месяц и просто дату" в число в десятеричной системе, а потом применить алгоритм перевода в другую систему. Дату можно перевести в число, например следующим способом {01.01.2006} - {01.01.0001} = 732311.

Для позиционных систем исчисления каждое место в числе имеет свой вес равный степени основания - справа налево 0, 1, 2, 3 и т.д. Т.о. число 732,311 = 7*10^5 + 3*10^4 + 2*10^3 + 3*10^2 + 1*10^1 + 1*10^0 = 700,000 + 30,000 + 2,000 + 300 + 10 + 1.

Для перевода в другую систему исчисления необходимо иметь алфавит для этой системы, для десятеричной это "0123456789" - всем знакомые арабские цифры, для 16-ричной - "01234567890ABCDEF". Для 36-ричной, видимо, "0123456789ABCDE...XYZ". Теперь начинаем последовательно делить наше число на основание системы исчисления, остаток от деления преобразовывать в цифру из алфавита, результат деления опять делить остаток от деления преобразовывать в цифру и так до тех пор пока результат деления не будет меньше основания. цифры записываем справа-налево.
1. int(732311 / 36 ) = 20341, 732311 % 36 = 35
2. int(20341 / 36) = 565, 20341 % 36 = 1
3. int(565 / 36) = 15, 565 % 36 = 25
4. 15
Проверяем 15 *36^3 + 25 *36^2 + 1 *36^1 + 35 *36^0 = 732311
Надеюсь, цифры для 15, 25, 1, 35 Вы самостоятельно сможете подобрать из алфавита.

P.S. У моего коллеги сын учится в старших классах, так их в школе уже чуть ли не третий год терзают задачами на перевод из одной системы в другую :-( Сначала переводили десятки, потом сотни, потом тысячи, а теперь добрались до десятков тысяч :-)

P.P.S. В конференциях по дельфям лет этак семь назад попадались уникумы, которые искали компоненты, реализующие сортировку пузырьком :-)
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Каким образом перевести число в 36 разрядную систему ??
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]