Написать функцию для перевода чисел из двоичной системы счисления в троичную - QBasic
Формулировка задачи:
4. Написать функцию для перевода чисел из двоичной системы счисления в троичную.
Пожалуйста помогите,если не трудно(
Решение задачи: «Написать функцию для перевода чисел из двоичной системы счисления в троичную»
textual
Листинг программы
DECLARE FUNCTION Bin2Tri$ (b AS STRING) CLS s$ = "110110110" PRINT s$, Bin2Tri(s$) FUNCTION Bin2Tri$ (b AS STRING) DIM dec AS LONG, i AS LONG, t AS STRING FOR i = 1 TO LEN(b) dec = dec * 2 + VAL(MID$(b, i, 1)) NEXT i DO t = LTRIM$(STR$(dec MOD 3)) + t dec = dec \ 3 LOOP WHILE dec Bin2Tri = t END FUNCTION
Объяснение кода листинга программы
- Функция Bin2Tri$ принимает один параметр типа STRING - b.
- Задается значение переменной s$ равное
110110110
. - Вызывается функция Bin2Tri$ с аргументом s$.
- В функции Bin2Tri$ объявляются следующие переменные:
- dec - переменная типа LONG, которая будет использоваться для хранения десятичного числа.
- i - переменная типа LONG, используется для цикла по символам строки b.
- t - переменная типа STRING, используется для хранения результата.
- Цикл FOR проходит по каждому символу строки b:
- В каждой итерации цикла значение каждого символа преобразуется в десятичное число, используя позиционную систему счисления.
- Десятичное число умножается на 2 в соответствии с позицией символа в строке.
- Цикл DO WHILE используется для формирования троичного числа:
- В каждой итерации цикла остаток от деления десятичного числа на 3 преобразуется в троичное число.
- Полученное троичное число добавляется к переменной t.
- По завершении цикла DO WHILE, троичное число присваивается переменной Bin2Tri$.
- Значение переменной Bin2Tri$ возвращается в качестве результата выполнения функции.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д