powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Перевод в тернарную СС - нет ли у кого готового кода?
9 сообщений из 9, страница 1 из 1
Перевод в тернарную СС - нет ли у кого готового кода?
    #39403096
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нужна процедура или пара функций перевода знакового целого из десятичной в тернарную (симметричную троичную) систему счисления и обратно. Цифры желательно (N,Z,P) == (-1,0,1), но необязательно. Хотя бы в рамках знакового Long (32 бит). Можно и классом, не суть.

То есть самому написАть несложно, но слегка лениво, особенно отлаживаться. Впрочем, если не найдётся - сделаю, конечно, потому как надо...
...
Рейтинг: 0 / 0
Перевод в тернарную СС - нет ли у кого готового кода?
    #39403104
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Akina,

не стыдно?

троллю с опытом, то
...
Рейтинг: 0 / 0
Перевод в тернарную СС - нет ли у кого готового кода?
    #39403114
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нет, не стыдно. Не найдётся готового - напишу, конечно.
...
Рейтинг: 0 / 0
Перевод в тернарную СС - нет ли у кого готового кода?
    #39403127
Фотография big-duke
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Перевод в тернарную СС - нет ли у кого готового кода?
    #39403195
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
big-duke , как полагаешь, если вопрос задан в форуме по VB, нужен ли мне код на питоне, сях или хаскеле? а с алгоритмом проблем нет, он элементарен.
...
Рейтинг: 0 / 0
Перевод в тернарную СС - нет ли у кого готового кода?
    #39403811
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если не лень подождать до завтра, выложу функцию перевода в любую систему счисления.
правда -1 в ней задать нельзя.
...
Рейтинг: 0 / 0
Перевод в тернарную СС - нет ли у кого готового кода?
    #39403828
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Antonariy , в любую позиционную или любую симметричную? если первое - то нет смысла, этого добра в Инете как грязи.
...
Рейтинг: 0 / 0
Перевод в тернарную СС - нет ли у кого готового кода?
    #39404150
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
позиционную.
...
Рейтинг: 0 / 0
Перевод в тернарную СС - нет ли у кого готового кода?
    #39404766
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну в общем для целых пока накидал

На форме поле (Text1), надпись (Label1) и 2 кнопки (Command1 - "Convert").

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
Private Const Digits As String = "NZP"

Private Sub Command1_Click()
Dim var1 As Long
Dim var2 As String

On Error GoTo ErrorHandler

var1 = Val(Text1.Text)
Do While Abs(var1) > 0
    Select Case var1 Mod 3
    Case 0
        var2 = Mid(Digits, 2, 1) & var2
        var1 = var1 \ 3
    Case -2, 1
        var2 = Mid(Digits, 3, 1) & var2
        var1 = (var1 - 1) \ 3
    Case -1, 2
        var2 = Mid(Digits, 1, 1) & var2
        var1 = (var1 + 1) \ 3
    End Select
Loop
If Len(var2) = 0 Then var2 = Mid(Digits, 2, 1)
Label1.Caption = var2
Done:
Exit Sub

ErrorHandler:
Label1.Caption = "Error"
Resume Done
End Sub

Private Sub Command2_Click()
Unload Me
End Sub

Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
    Call Command1_Click
End If
End Sub

...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Перевод в тернарную СС - нет ли у кого готового кода?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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