Берём отдельно целую часть и делаем следующее:
1) делим на два с остатком (например, уголком)
2) если результат деления не равен нулю, то повторяем, начиная с пункта 1
3) записываем все полученные остатки вместе, начиная с последнего (он равен единице, если целая часть была не ноль) -таким образом мы составили целую часть двоичного числа
Примечание: обычно последнее деление не пишут (т.е. не делят до нуля, а останавливаются на единице, и с этой единицы начинают составлять ответ, а после неё уже идут все остатки)
Ставим после полученной целой части десятичную запятую.
Берём отдельно дробную часть и делаем следующее:
1) умножаем на два
2) у полученной дроби забираем целую часть (ноль или единицу), и записываем её в строчку после полученной выше целой части
3) если оставшаяся дробная часть не равна нулю, то повторяем начиная опять с пункта 1
Примечание: при переводе дробной части могут получаться бесконечные периодические дроби, поэтому повторение алгоритма перевода дробной части имеет смысл делать либо до получения нужной точности (количества знаков после запятой), либо, если нужно- до выявления периода дроби.
После записанной дроби, чтобы обозначить что она в двоичной системе, дописываем чуть ниже двойку (размером меньше основных цифр).
Пример перевода целой и дробной части числа 8,125 смотри на приложенных картинках.
Dim Massiv(9) as Integer ' Объявляем массив из 9 элементов
Dim Composition as Integer ' Результат произведения нечетных элементов массива
Dim index as Integer ' Индекс для доступа к элементам массива
' Заполняем массив случайными числами
For index = 0 to 9
Massiv(index) = Rnd() * 5
print Massiv(index) ' Вывод массива
Next
' Инициализируем переменную Composition
Composition = 1
For index = 0 to 9
If Massiv(index) Mod 2 <> 0 Then ' Если элемент не четный то выполнить произведение
Composition = Composition * Massiv(index)
End if
Next
print Composition ' Результат произведения
proba.txt
Объяснение:
.txt по расширению