b-s-a Меня на смущает. Меня БЕСИТ просто, потому что мне непривычен формат с E+xx. Я его видел в начале 00ых годов в институте и сейчас в OwenLogic.
b-s-a Меня на смущает. Меня БЕСИТ просто, потому что мне непривычен формат с E+xx. Я его видел в начале 00ых годов в институте и сейчас в OwenLogic.
Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живёте. © Steve McConnell
Мой рабочий блог со статьями про щиты и автоматику ОВЕН - Cs-Cs.Net | Почта: Info@Cs-Cs.Net | Канал в ТГ @CsCsNetLab
Ничего не имею против него. Это научный формат. Мы в институте, обычно, писали 0,1234*10^-6, но 0.1234e-6 несколько лаконичней. Этот формат очень удобен для сохранения необходимой точности вычислений: нельзя написать 10*9.8*3.1415926=307.8760748 - надо писать 0.31e+3, так как исходные данные имеют минимальную точность 2 знака. В науке это важно...
Но вся эта херня не имеет отношения к OwenLogic, так как здесь ограничения по точности накладывает только битовая разрядность переменных. Я посмотрел представление OL - в научном формате число занимает 8 символов: 3 значащих знака, десятичная запятая, буква E, знак степени и две цифры степени. Поэтому можно спокойно писать числа до миллиона в нормальном виде, более миллиона в научном, с шагом экспоненты 3: 1.23, 12.3, 123, 1230, 12300, 123000, 1.23е+06, 12.3е+06, 123е+06, 1.23е+09... Аналогично для чисел меньше 1: 0.123, 0.0123, 0.00123, 123е-06, 12.3е-06, 1.23е-06, 123е-09... Почему так? Во-первых, близкие числа не будут так часто скакать между экспонентами - а то смотришь, параметр должен расти, а он на первый взгляд в 10 раз уменьшается, это только потом, если успеваешь, можно разобрать изменение экспоненты. Во-вторых, наиболее популярные значения будут в интуитивно понятном виде. В-третьих, когда присутствует экспонента, она сразу совместима со стандартными размерностными приставками (микро, мега...).
Если так нельзя, то хотя бы всегда отображать float в научном формате с шагом экспоненты 3: 0.123e+03, 1.23e+03, 12.3e+03, 0.123e+06... и 12.3e+00, 1.23e+00, 0.123e+00, 12.3e-03, 1.23e-03...
Последний раз редактировалось b-s-a; 01.01.2025 в 15:41.