问题标签 [arithmetic-expressions]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
bash - Bash 中的数基
要强制在 base10 中解释数字,您可以使用 10# 作为前缀。特别是 10#08 和 10#09 将被解释为有效的十进制数字,而不是无效的八进制数字。(我正在输出date +%S
)
但是,似乎我不能在比较中使用该变量:
给我错误
这是bash中的错误吗?
loops - 在循环外使用 sh while-read-line-loop 迭代计数器
我正在编写 git hook 并且对下一个代码行为感到非常困惑:
我希望echo $exit_code将为每个我的东西退出代码非零生成文件总量。但我总是看到 0。我的错误在哪里?
c++ - C++ 隐式转换(有符号 + 无符号)
我了解,关于隐式转换,如果我们有一个无符号类型操作数和一个有符号类型操作数,并且无符号操作数的类型与有符号操作数的类型相同(或大于),则将转换有符号操作数未签名。
所以:
我不明白 - 我读到如果有符号操作数的类型大于无符号操作数:
如果无符号类型中的所有值都适合较大的类型,则无符号操作数将转换为有符号类型
如果无符号类型中的值不适合更大的类型,则有符号操作数将转换为无符号类型
所以在下面的代码中:
u
将转换为signed long long,因为int 值可以适合signed long long??
如果是这种情况,在什么情况下较小的类型值不适合较大的类型值?
r - 为什么 NaN^0 == 1
由早期代码打高尔夫球的地方提示,为什么会:
为 1 非常有意义,NA^0
因为NA
缺少数据,任何增加到 0 的数字都会给出 1,包括-Inf
和Inf
。然而NaN
应该代表not-a-number,那为什么会这样呢?当状态的帮助页面时,这更加令人困惑/令人担忧?NaN
:
在 R 中,基本上所有数学函数(包括 basic
Arithmetic
)都应该可以正常工作+/- Inf
并NaN
作为输入或输出。基本规则应该是调用和与
Inf
s 的关系确实是具有适当数学限制的语句。涉及的计算
NaN
将返回NaN
或者可能NA
返回:不能保证这两者中的哪一个,并且可能取决于 R 平台(因为编译器可能会重新排序计算)。
这背后是否有哲学原因,或者只是与 R 如何表示这些常数有关?
sql - 如何在 SQL 中过滤数学计算的数据?
这可能比我想象的要容易,但我很难过。我写了下面的查询,它总结了客户在特定商店的所有购买,以及同一客户在同一商店的退货总额,最后,存储从总退货中减去总退货的结果在名为 TOTAL_SPENT 的计算列中购买。这是我的查询:
我的问题是这个查询返回了数十万条记录,但我只关心大约 10% 的返回数据。因此,假设您只想查看 TOTAL_SPENT >= 500.00 的返回数据。但是对于我的生活,我无法弄清楚如何做到这一点!羞愧地低着头
batch-file - 在`cmd`中对文件中每一行的整数求和
是时候在最不利于 shell 的命令行 fu 中使用了,cmd.exe
.
如何对文件中包含的整数进行求和?
您可能会考虑以下工作:
但是,它似乎%errorresult%
总是在for
循环期间for
循环之前的值。意思是,结果%errorlevel%
总是有 [最后一行的整数值%temp%/kill_site.log
] + [%errorlevel%
集合,即1
]。
在 提供的退出代码的情况下taskkill
,如果taskkill
成功杀死现有进程,退出代码是0
,那么导致%errorresult%
这种情况将是1
。taskkill
如果调用杀死进程时进程不存在,则退出代码为128
; 在这种情况下是%errorresult% will be
129`。
我想%errorresult%
成为 %temp%/kill_site.log
. 我该怎么做呢?
[更新]
感谢斯蒂芬在下面的回答,我有一个如下的最终脚本,我想包含它以供其他用户将来参考:
它利用endlocal
.
我也刚刚意识到这有点倒退,因为我应该检查进程是否在对不存在的进程采取任何无效操作之前运行,但问题仍然得到解决。 使用批处理脚本查找是否存在特定的运行进程实际上使用类似的检查方法%errorlevel%
也很容易。
performance - 编写无限列表以跳过 p 的每个因素?
我怎样才能有效地表示列表[0..] \\ [t+0*p, t+1*p ..]
?
我已经定义:
我想有效地表示一个无限列表,它是 和 的区别[0..]
,factors p t
但使用\\
fromData.List
即使是中等大小的列表也需要太多内存:
我知道我可以表示以下之间的t+0*p
值t+1*p
:
然而,重复计算和连接innerList
以增加间隔似乎很笨拙。
我可以在[0..] \\ (factors p t)
不计算rem
或mod
每个元素的情况下有效地表示吗?
parsing - 前缀符号中的算术表达式语法(Java Cup)
我正在用前缀表示法编写算术表达式的语法。但是,在解析负数或减法时我遇到了问题。语法示例是这样的:
但是,如果我的输入是- 5 4
,它会减少5
为E
,然后它会减少- E
(负数),然后解析器会在 处给我一个语法错误4
。正确的应该是5
as E
, next 4
asE
和- E E
as E
。如何使用关联性解决这个问题?还是我需要重写我的语法?
python - 对字符串列表执行算术运算
我已经csv
使用 python 从文件中提取数据。文件中的数据csv
采用以下格式:
我编写了代码以从 csv 文件中提取它。
所以,ar[0]='a=(10100*b)+(-1289201*c)+(12312312*d)'
现在,我需要用特定的浮点变量替换 b、c 和 d 的值。
所以,我做了以下事情:
现在的问题是我无法对最终结果进行任何算术运算,即输出格式如下。
有没有一种方法可以对以下列表格式执行一些算术运算。我试图删除列表,但这没有帮助。
matlab - Matlab syms变量精度?
只是在matlab中遇到了一些可变精度问题..
我有代码:
但 val 总是四舍五入。我应该得到,val = 0.0049999
但我得到了val = 0.0050
。
有人知道为什么吗?
谢谢。
编辑:添加额外的代码
第一个 sprintf 工作并显示正确的舍入,但第二个没有!