|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
02.03.2018, 16:00 | #1 |
Пользователь
Регистрация: 11.11.2016
Сообщений: 22
|
Помогите с операциями в троичной системе счисления
Программа в дэлфи. Даны два числа в троичной системе, нужно их сложить, умножить, отнять, и разделить. Была мысль сделать из двух чисел массив, а потом уже как-то дальше работать. Но потом я вообще запутался. Может будут какие-нибудь идеи? Если кинете куски кода, будет вообще шикарно
|
02.03.2018, 16:14 | #2 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
это вообще можно сделать двумя способами.
очень сложным и очень простым. сложный способ. реализовывать подобие длинной арифметики, но для троичной СС. Сложение, вычитание, умножение и деление "в столбик" (подчёркиваю - всё в троичной СС). а есть очень простой способ, который я Вам и рекомендую. взять строку с числами в любой СС (в троичной в данном случае), перевести в десятичную. Выполнить нужную операцию на числами (это банально). Результат перевести в нужную СС( в данном случае - в троичную СС). есть вопросы? |
02.03.2018, 19:51 | #3 | |
Цифровой кот
Старожил
Регистрация: 29.08.2014
Сообщений: 7,629
|
Цитата:
Так, не? Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
|
|
02.03.2018, 23:06 | #4 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
|
02.03.2018, 23:15 | #5 | |
Цифровой кот
Старожил
Регистрация: 29.08.2014
Сообщений: 7,629
|
Цитата:
У нас на заводе до сих пор попадаются индивиды-программисты, думающие, что инфа в компе хранится в десятичной системе, и на полном серьёзе возмущающиеся: "какой дебил придумал 16-ричную/двоичную систему? пальцев-то 10!"... Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
|
|
03.03.2018, 09:11 | #6 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
Цитата:
Программист пишет: Код:
- В какой системе счисления 17, записанное в переменную a ? - В какой системе счисления -11, записанное в переменную b ? - Какой ответ и в какой системе счисления будет напечатан ответ (произведение двух чисел) ? И АБСОЛЮТНО неважно, в каком виде оно там хранится внутри. Это понятно? Продолжаем разговор. Возвращаясь к теме. Пусть дана строка, в которое записано некое число, представленное в троичной системе счисления' Задача - написать код, который переводит это число в десятичное представление. Справитесь? Приведите, пожалуйста, код (на Pascal, например). А потом попытайтесь объяснить, где в этом код присутствует двоичная система счисления и для чего она там. При желании можете ещё рассказать про АЛУ. Ещё раз - для заявленного мной алгоритма числа нужно переводить В ДЕСЯТИЧНУЮ систему (как она там хранится внутри желязяки - меня вообще не трогает), выполнять действия и переводить в троичную (о ужас, если, например, использовать для хранения троичных чисел целочисленные переменные, то там вообще будет хранится совершенно другое значение, никак не связанное с троичной СС. Хотя, как раз для того, чтобы избежать этой несуразицы (и для универсальности - для систем счисления с основанием >9) я бы рекомендовал хранить представление числа в троичной СС в виде СТРОКИ. Но это, имхо, к предложенному мной алгоритму решения задачи отношения не имеет. Представьте, что Вы расписываете алгоритм решения этой задачи для ученика 5-го класса (как раз в нём они изучают системы счисления, если я не ошибаюсь). Вот дали ему два числа в троичной СС их надо перемножить и вывести результат в троичной СС. Чтобы было в этом алгоритме? p.s. Не хотел я ввязываться в дискуссию, но, простите, не удержался. Тут уже на форуме было подобное бурное обсуждение и я не хотел повторять его. Последний раз редактировалось Serge_Bliznykov; 03.03.2018 в 09:13. |
|
03.03.2018, 10:44 | #7 | |
Цифровой кот
Старожил
Регистрация: 29.08.2014
Сообщений: 7,629
|
Цитата:
Перестань пожалуста, я тебя очень прошу! Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
|
|
03.03.2018, 13:58 | #8 | |
Программист
Участник клуба
Регистрация: 23.06.2009
Сообщений: 1,772
|
Не могу согласиться.
Цитата:
Таки да - для вычислений нам нужно переводить числа в такой формат, в котором мы умеем производить вычисления. И этот формат, вообще говоря, от систем счисления абстрагирован. Хоть в троичном компьютере, хоть в машине Поста с единичной системой - главное, что машина умеет эти числа складывать и умножать. И ведь существует два общих алгоритма для перевода этих "вычислительных чисел" в произвольную систему счисления (с последовательным делением на основание с остатком) и обратно (с последовательным прибавлением очередной цифры и доумножением на основание) - и тут нет никакого особого положения ни двоичной, ни десятичной системы |
|
03.03.2018, 19:05 | #9 |
Форумчанин
Регистрация: 08.11.2017
Сообщений: 347
|
Арифметические операции, перевод из одной системы в другую
Перевод целых из одной системы счисления в другую.
Арифметические операции вычисления в столбик для неограниченных целых. Не сочтите за издевательство, но иду разогревать попкорницу :D Блин, посмотрел, оказывается, там ещё и на списках сделано - трындец полный. Не спрашивайте, как эта хрень работает! Последний раз редактировалось СтудПом; 03.03.2018 в 19:08. |
09.03.2018, 07:57 | #10 | |
Я самый любопытный
Участник клуба
Регистрация: 24.07.2012
Сообщений: 1,950
|
Цитата:
Перевод чисел из одних систем счисления в другие - непонятно для чего Вам понадобилось... |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
пользователь ввел число и я хочу проверить в какой системе счисления это число. И чтоб эта система счисления вывелась на экран. Как такое реализовать | Shilen | Python | 3 | 27.12.2017 16:56 |
[Delphi] ИЗ четырнадцатеричной системе счисления в десятеричной системе счисления | Safok | Помощь студентам | 1 | 17.11.2014 22:41 |
Умножение в 4-системе счисления | StoneGod | Общие вопросы C/C++ | 3 | 11.10.2014 15:56 |
Не работает преобразование кода из одной системы счисления в ID в другой системе счисления | Ultran | PHP | 1 | 09.11.2013 21:15 |
вывести все числа в троичной системе до n | alto_angelo | Помощь студентам | 0 | 01.11.2012 17:43 |