Показать сообщение отдельно

  #9  
Старый 23.09.2008, 01:24
Larionich
Новичок
Регистрация: 21.09.2008
Сообщений: 16
С нами: 9282270

Репутация: 52
По умолчанию

Цитата:
как вывести число с ведущим нулем и степень десяти?
Насколько мне известно, printf не может выводить с ключом e или E дробное число не в стандартной форме ( не в a+q^t, 1<=a<10), ответ "нет", нельзя модификатором вывода сделать то, что ты захотел. А у тебя компилятор и выводит не в стандартной форме, ерунда получается. Если же обойтись без степени десятки, то функция (то же с флагом "e" можно написать)
Код:
printf("%13.3f", a); //минимальная ширина поля 13 символов, точность 3
Можно же, заняться математикой, побитово считывать переменную (типа float например, Си), 4 байта, 32 бита на всю; 1 бит под знак, 8 под порядок, 23 на мантиссу:
например 12345.67=(2^13)*1.507... 13 это порядок (он не представляется в самой переменной), (127+13) это смещенный порядок (так он представляется в самой переменной [ 127+порядок]) , мантиса это представление 0.507... в двоичном коде.
Если не ошибаюсь так : знак числа(1 бит) | порядок(8) | мантисса(23).
Информация интересная, то тебе она скорее всего не нужна.

Последний раз редактировалось Larionich; 23.09.2008 в 01:41..
 
Ответить с цитированием