Сложный тип данных - Complex data type
Немного языки программирования обеспечить сложный тип данных за комплексное число память и арифметика как встроенные (примитивные) тип данных.
В некоторых средах программирования термин сложный тип данных (в отличие от примитивные типы данных ) является синонимом составной тип данных.[1][2]
Арифметика комплексных чисел
Сложная переменная или значение обычно представляется в виде пары плавающая точка числа. Языки, поддерживающие сложный тип данных, обычно предоставляют специальный синтаксис для построения таких значений и расширяют базовые арифметические операции ('+', '-', '×', '÷'), чтобы воздействовать на них. Эти операции обычно переводятся компилятор в последовательность с плавающей запятой машинные инструкции или в библиотека звонки. Эти языки могут также обеспечивать поддержку других операций, таких как форматирование, проверка равенства и т. Д. Как и в математика эти языки часто интерпретируют значение с плавающей запятой как эквивалент сложного значения с нулевой мнимой частью.
Языковая поддержка
- В FORTRAN СЛОЖНЫЙ тип
- В C99 стандарт языка программирования C включает сложные типы данных и сложные математические функции в заголовок стандартной библиотеки
<complex.h >
- В C ++ стандартная библиотека предоставляет
сложный
шаблонный класс, а также сложные математические функции в<complex>
заголовок - В Идти язык программирования имеет встроенные типы
сложный64
(каждый компонент 32-битный с плавающей запятой) исложный128
(каждый компонент 64-битный с плавающей точкой) - В Perl основной модуль Математика :: Комплекс обеспечивает поддержку комплексных чисел
- Python обеспечивает встроенный
сложный
тип. Литералы мнимых чисел могут быть указаны путем добавления буквы «j». Сложные математические функции представлены в стандартном библиотечном модуле.cmath
[3] - Рубин обеспечивает Сложный класс в модуле стандартной библиотеки сложный
- OCaml поддерживает комплексные числа с помощью стандартного библиотечного модуля Сложный
- Haskell поддерживает комплексные числа с помощью стандартного библиотечного модуля Data.Complex (ранее назывался Сложный)
- Меркурий предоставляет комплексные числа с полной поддержкой перегрузки оператора в дополнительном распределении, используя libcomplex_numbers.
- Ява не имеет стандартного класса комплексных чисел, но существует ряд несовместимых бесплатных реализаций класса комплексных чисел:
- В Apache Commons Математическая библиотека предоставляет комплексные числа для Java с ее Сложный учебный класс
- В JScience библиотека имеет Сложный числовой класс
- В JAS библиотека позволяет использовать комплексные числа.
- Netlib имеет класс комплексных чисел для Java
- javafastcomplex также добавляет поддержку сложных чисел для Java
- jcomplexnumber это проект по реализации комплексного числа на Java
- JLinAlg включает комплексные числа с произвольной точностью.
- Common Lisp: Стандарт ANSI Common Lisp поддерживает комплексные числа с плавающей запятой, рациональные числа и целые числа произвольной точности. Его основные математические функции определены для комплексных чисел, где это применимо. Например, квадратный корень из -1 - это комплексное число:
? (sqrt -1)#C(0 1) ; результат (sqrt -1)
- Схема: Комплексные числа и функции (например,
грех
) включены в языковую спецификацию. Однако их реализация в стандарте R5RS является необязательной, а в R6RS - обязательной. - В .NET Framework обеспечивает System.Numerics.Complex начиная с версии 4.0.
- В smart BASIC за iOS естественно поддерживает комплексные числа в обозначениях а + би. Любая переменная, математическая операция или функция может принимать как действительные, так и комплексные числа в качестве аргументов и возвращать действительные или комплексные числа в зависимости от результата. Например, квадратный корень из -4 - это комплексное число:
ПЕЧАТЬ SQRT (-4)
2i
История
Эта секция нуждается в расширении. Вы можете помочь добавляя к этому. (Ноябрь 2015) |
В СЛОЖНЫЙ
тип данных был предоставлен в FORTRAN IV.[4]
Рекомендации
- ^ Руководство по проектированию и внедрению базы данных IBM Informix
- ^ «Документация по Flash 8». Архивировано из оригинал на 2009-04-27. Получено 2009-05-11.
- ^ Документация Python v2.6.5
- ^ Руководство по программированию на Fortran IV Дэниел Д. Маккракен - 1972 - 288 страниц. «Возможности, предоставляемые сложными операциями Fortran, позволяют значительно сэкономить на программировании при решении определенных проблем».