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

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

не стыдно?

троллю с опытом, то
...
Рейтинг: 0 / 0
12.02.2017, 23:08
    #39403114
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перевод в тернарную СС - нет ли у кого готового кода?
Нет, не стыдно. Не найдётся готового - напишу, конечно.
...
Рейтинг: 0 / 0
12.02.2017, 23:27
    #39403127
big-duke
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перевод в тернарную СС - нет ли у кого готового кода?
...
Рейтинг: 0 / 0
13.02.2017, 08:00
    #39403195
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перевод в тернарную СС - нет ли у кого готового кода?
big-duke , как полагаешь, если вопрос задан в форуме по VB, нужен ли мне код на питоне, сях или хаскеле? а с алгоритмом проблем нет, он элементарен.
...
Рейтинг: 0 / 0
13.02.2017, 23:04
    #39403811
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перевод в тернарную СС - нет ли у кого готового кода?
если не лень подождать до завтра, выложу функцию перевода в любую систему счисления.
правда -1 в ней задать нельзя.
...
Рейтинг: 0 / 0
13.02.2017, 23:59
    #39403828
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перевод в тернарную СС - нет ли у кого готового кода?
Antonariy , в любую позиционную или любую симметричную? если первое - то нет смысла, этого добра в Инете как грязи.
...
Рейтинг: 0 / 0
14.02.2017, 14:20
    #39404150
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перевод в тернарную СС - нет ли у кого готового кода?
позиционную.
...
Рейтинг: 0 / 0
15.02.2017, 12:17
    #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
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Перевод в тернарную СС - нет ли у кого готового кода? / 9 сообщений из 9, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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