首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >复数记数法

复数记数法
EN

Stack Overflow用户
提问于 2009-09-20 23:09:49
回答 4查看 1.5K关注 0票数 0

我的DotNET应用程序内置了一个有限的脚本语言(在VBScript上松散建模),主要用于后处理数字、点和向量。我刚刚添加了对复数的支持,但我正在努力处理表示法。

我不想使用A+ Bi符号,因为如果A或B已经被定义为等式,那么它就不是一个明确的划分:

31 *5+6+ -5i

这可以解释为:

A= 31 *5+6 B= -5i

和:

A= 31 *5 B=6+ -5i

据我所知,没有一种编程语言本身就支持复数。我认为下面这样的方法可能会起作用,但我希望大家能对此提供意见:

{31 * 5} + {6 + -5}i

复数(31* 5,6+ -5)

r{31 * 5} i{6 + -5}

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2009-09-20 23:25:45

看起来你在你的例子中使用了显式乘法(即你需要A* B,而不是A B )。

在这种情况下,为什么不直接在值后面使用i后缀,如

代码语言:javascript
复制
 myComplex = 12 + 6i
   or
 myOtherComplex = 12/7 + (6 * pi)i

你可能需要决定是i还是j,我都看过了。

这个i后缀的技巧与科学提示没有什么不同,它是e(例如3.1415e7)

编辑(跟随大卫的评论)

上面的格式可能会变得令人困惑,这取决于受众,澄清这一点的一种方法可能是只允许虚构的字面符号,并将这些包含到中,这是从现有的向量符号派生的复杂符号。当虚数或复数需要表达式来指定它们时,语法将需要显式的“函数式”语法,如虚数( i)和复数(r,i)。

解析规则

  • 任意数字(有符号或无符号,整数或十进制,甚至exp。符号数字)后面紧跟着后缀i是虚数:-7i或1.23i或5.76e4i,但不是12i(数字和后缀之间不允许有空格)
  • 具有两个值的向量,第一个是实数,第二个虚数是复数:(1,7i)或even (7,当"i“值是表达式时使用0i)
  • Imaginary(i)格式。当"r“或"i”参数是/是表达式时,或者只要我们希望避免歧义,就会使用syntax.
  • Complex(r,i)格式,而不使用i后缀。

短中的

  • (7,1i),(0,-3.1415i),(13,0i),复数(13,0)或复数(7x+3,

(Y)+2)都是复数

  • 6i,-1.234e5i,虚数(1.234)或虚数(sqrt(19x+5y))都是虚数
  • (12,23,34)是R^3中的向量
  • (12i,-2i)中的向量在I^2 (不是复数,由于第一个元素不是real)
  • ((0,0i),(1,-9.2i),(12,0i)或((0,21i),Complex(12,3),(44,-55i))是C^3

中的向量

这似乎是一致和简单的,但话又说回来,只有真正的最终用户才能知道。

票数 0
EN

Stack Overflow用户

发布于 2009-09-20 23:40:32

如果您的愿望是简单地区分复数的实部和虚部,我将执行以下操作之一。

  • 用某种形式的括号将数字括起来,以确保它被视为一个单元。例如,对于额外的readability.
  • Introduce,6+5i变成了{6,5}或{6,5i},这是一个分隔部件的标记,类似于6.022e23中的指数。例如,6+5i变为6i5。你仍然需要括号来指定这个公式,比如6+ (b/2)i变成6i(b/2),而不是令人困惑的6ib/2 (也可以读作(6ib)/2),不幸的是,你失去了i作为变量的用法。

这两种方法都很容易处理,即使用简单的解析器也是如此,而且它们足够接近数学表示法,以免混淆。我更喜欢第一种,因为它对我来说似乎更明确,并且使用了不太可能混淆的符号。

票数 2
EN

Stack Overflow用户

发布于 2009-09-20 23:26:30

你的用户有他们使用的特定符号吗?你能选一个尽可能靠近他们的吗?在我的例子中,我会使用+ bi,所以我会说{31 * 5} + {6 + -5}i,但是,如果他们习惯于函数形式,那么我建议复数(31* 5,6+ -5)。

既然您正在使用.net,那么您可能希望使用DLR来提供您的脚本、pythonruby语法?

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1452276

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档