Главная Случайная страница


Полезное:

Как сделать разговор полезным и приятным Как сделать объемную звезду своими руками Как сделать то, что делать не хочется? Как сделать погремушку Как сделать так чтобы женщины сами знакомились с вами Как сделать идею коммерческой Как сделать хорошую растяжку ног? Как сделать наш разум здоровым? Как сделать, чтобы люди обманывали меньше Вопрос 4. Как сделать так, чтобы вас уважали и ценили? Как сделать лучше себе и другим людям Как сделать свидание интересным?


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Типы float, double И long double





Разнообразные целочисленные типы нормально подходят для большинства про­ектов по разработке программного обеспечения. Тем не менее, ориентированные на математику и финансы программы часто оперируют числами с плавающей запятой. В языке С такие числа имеют тип float, double или long double. Они соответс­твуют данным вещественного типа в языках программирования FORTRAN и Pascal. Как упоминалось ранее, числа с плавающей запятой позволяют представлять намно­го больший диапазон чисел, включая десятичные дроби. Представление чисел с плавающей запятой подобно научной форме записи, которая применяется для выражения очень больших и очень маленьких чисел. Давайте рассмотрим такую форму записи.

В научной форме записи числа представляются в виде десятичных чисел, умножен­ных на степень числа 10. Рассмотрим несколько примеров.

Число Научная форма записи Экспоненциальная форма записи
1 ООО ООО ООО 1.0*105 1. 0е9
123 ООО 1.23*105 1.23е5
322,56 3.2256x10-' 3.2256е2
0,000056   5.6е-5

В первом столбце показана обычная форма записи числа, во втором столбце — на­учная форма записи, а в третьем — экспоненциальная форма записи, которая представ­ляет собой научную форму записи, обычно используемую при работе с компьютерами, при этом за обозначением «следует показатель степени 10. На рис. 3.7 приведено еще несколько примеров чисел с плавающей запятой.

 

Стандарт языка С требует, чтобы тип float был спосо­бен представлять минимум шесть значащих цифр и охваты­вал диапазон значений, по меньшей мере, от 10-37 до 10+37.

Первое требование означает, что тип float должен пред­ставлять, как минимум, первые шесть цифр такого числа, как 33.333333. Второе требование по достоинству оценят те, кто оперирует такими величинами, как масса Солнца (2.0е30 килограмм), электрический заряд протона (1.6е-19 кулона) или сумма государственного долга. Часто для хра­нения чисел с плавающей запятой системы используют 32 бита. Восемь битов отводятся под значение экспоненты и ее знака, а остальные 24 бита служат для представления не­экспоненциальной части числа, которая называется мантис­сой или значащей частью числа, и ее знака.

Для представления чисел с плавающей запятой язык С предлагает также тип double (обеспечивающий двойную точность). Тип double имеет те же требования к минималь­ному диапазону возможных значений, что и float, но под­держивает более высокое минимальное количество значащих цифр — 10. В типичных представлениях типа double применяются 64 бита, а не 32. В некоторых системах все 32 дополнительных бита используются для неэкспоненциальной части. Это приводит к увеличению количества значащих цифр и сокращению ошибок, связанных с округ­лением. В других системах часть этих битов используется для размещения большей экспоненты, благодаря чему расширяется диапазон возможных значений. Любой из этих подходов обеспечивает, как минимум, 13 значащих цифр, что более чем удовлет­воряет минимальному требованию стандарта.

Язык С допускает третий тип данных с плавающей запятой: long double. Цель этого типа — достижение большей точности, чем у типа double. Однако С гарантиру­ет только то, что точность типа long double, по меньшей мере, не уступает точности типа double.

 

Date: 2015-12-13; view: 516; Нарушение авторских прав; Помощь в написании работы --> СЮДА...



mydocx.ru - 2015-2024 year. (0.005 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию