Jump to content

Сложный тип данных

Некоторые языки программирования предоставляют сложный тип данных для хранения комплексных чисел и арифметики в качестве встроенного ( примитивного ) типа данных .

Арифметика комплексных чисел

[ редактировать ]

Комплексная переменная или значение обычно представляется как пара чисел с плавающей запятой . Языки, поддерживающие сложные типы данных, обычно предоставляют специальный синтаксис для построения таких значений и расширяют базовые арифметические операции («+», «-», «×», «÷») для воздействия на них . Эти операции обычно преобразуются компилятором в последовательность машинных инструкций с плавающей запятой или в вызовы библиотеки . Эти языки также могут обеспечивать поддержку других операций, таких как форматирование, проверка на равенство и т. д. Как и в математике , эти языки часто интерпретируют значение с плавающей запятой как эквивалент комплексного значения с нулевой мнимой частью.

Языковая поддержка

[ редактировать ]
  • Тип FORTRAN COMPLEX. [1]
  • Стандарт C99 языка программирования C включает сложные типы данных и сложные математические функции в заголовке стандартной библиотеки. <complex.h>.
  • Стандартная библиотека C ++ предоставляет complex класс шаблона, а также функции комплексной математики в <complex> заголовок.
  • Язык программирования Go имеет встроенные типы. complex64 (каждый компонент имеет 32-битное число с плавающей запятой) и complex128 (каждый компонент представляет собой 64-битное число с плавающей запятой).
  • Основной Perl модуль Math::Complex обеспечивает поддержку комплексных чисел.
  • Python предоставляет встроенные complex тип. Литералы мнимых чисел можно указать, добавив букву «j». Функции комплексной математики предоставляются в модуле стандартной библиотеки. cmath. [2]
  • Руби предоставляет Сложный класс в модуле стандартной библиотеки сложный .
  • OCaml поддерживает комплексные числа с помощью модуля стандартной библиотеки. Сложный .
  • Haskell поддерживает комплексные числа с помощью модуля стандартной библиотеки. Data.Complex (ранее называвшийся Сложный ).
  • Mercury предоставляет комплексные числа с полной поддержкой перегрузки операторов при распределении дополнительных возможностей, используя libcomplex_numbers .
  • В Java нет стандартного класса комплексных чисел, но существует ряд несовместимых свободных реализаций класса комплексных чисел:
    • Библиотека Apache Commons Math предоставляет комплексные числа для Java с помощью Сложный класс.
    • В библиотеке JScience есть комплексных чисел. Класс
    • Библиотека JAS позволяет использовать комплексные числа.
    • Netlib имеет класс комплексных чисел для Java.
    • javafastcomplex также добавляет поддержку комплексных чисел для Java.
    • jcomplexnumber — проект по реализации комплексных чисел в Java.
    • JLinAlg включает комплексные числа с произвольной точностью.
  • Common Lisp : Стандарт ANSI Common Lisp поддерживает комплексные числа с плавающей запятой, рациональные числа и целые числа произвольной точности. Его основные математические функции определены для комплексных чисел, где это применимо. Например, квадратный корень из -1 является комплексным числом:
     ? (sqrt -1)
    #C(0 1)            ; the result of (sqrt -1)
    
  • Схема : комплексные числа и функции (например, sin) включены в спецификацию языка. Однако их реализация не является обязательной в стандарте R5RS, тогда как в R6RS она является обязательной.
  • .NET Framework предоставляет System.Numerics.Complex начиная с версии 4.0.
  • Умный BASIC для iOS естественным образом поддерживает комплексные числа в нотации a + bi . Любая переменная, математическая операция или функция могут принимать в качестве аргументов как действительные, так и комплексные числа и возвращать действительные или комплексные числа в зависимости от результата. Например, квадратный корень из -4 является комплексным числом:
    PRINT SQRT(-4)
    2i
    
  • Julia включает предопределенные типы как для комплексных, так и для рациональных чисел, начиная с версии 0.3. [3]
  • R обеспечивает complex основной тип данных [4]
  • Swift не имеет стандартного типа данных комплексного числа, но Swift Numerics , который поддерживается разработчиками языка, предлагает ComplexModule .
  1. ^ Руководство по программированию на Fortran IV Дэниел Д. Маккракен - 1972 г. - 288 страниц. «Возможности, обеспечиваемые сложными операциями на Фортране, позволяют значительно сэкономить усилия по программированию при решении определенных задач».
  2. ^ Документация Python v2.6.5
  3. ^ «Комплексные и рациональные числа — документация Julia Language 0.3.13-pre» .
  4. ^ «Типы данных R» . www.w3schools.com . Проверено 26 апреля 2022 г.
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 6656c154672c49eeda0afed3e2f3249d__1699492020
URL1:https://arc.ask3.ru/arc/aa/66/9d/6656c154672c49eeda0afed3e2f3249d.html
Заголовок, (Title) документа по адресу, URL1:
Complex data type - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)