标签: mathematical-expressions

检查字符串是否遵循Java中的ISBN-13

我试图检查一个字符串(重要的是它是一个字符串)即时阅读是否符合ISBN-13的规则 .我找到了一个公式

例如,ISBN-13校验位为978-0-306-40615-?

计算方法如下:

s = 9×1 + 7×3 + 8×1 + 0×3 + 3×1 + 0×3 + 6×1 + 4×3 + 0×1 + 6×3 + 1×1 + 5×3
  =   9 +  21 +   8 +   0 +   3 +   0 +   6 +  12 +   0 +  18 +   1 +  15
  = 93
93 / 10 = 9 remainder 3
10 –  3 = 7`
Run Code Online (Sandbox Code Playgroud)

我的问题是我不知道如何将一个数字乘以1而另一个数字乘以3?我猜一个for循环,但我不知道如何开始.

java for-loop mathematical-expressions

2
推荐指数
1
解决办法
2768
查看次数

检查字符串是否是数学表达式?

我试图在Java中编写一个接受字符串作为参数的方法.现在这个字符串可能是一个数学表达式,也可能只是一个普通的字符串.我只有在它是一个数学表达式时才能对它进行评估,如果不是这样的话,我就不管它.我将使用java脚本引擎评估数学表达式,如下所示:

ScriptEngineManager mgr = new ScriptEngineManager();
ScriptEngine engine = mgr.getEngineByName("JavaScript");
String foo = "1+2*10";
System.out.println(engine.eval(foo));
Run Code Online (Sandbox Code Playgroud)

但问题是如果我传递一个不是数学表达式的字符串,这会引发异常.我的代码中不需要例外.我想要实现的是这样的:

if(isExpression(foo))
{
engine.eval(foo);
}
Run Code Online (Sandbox Code Playgroud)

这样我在评估它之前检查它是否是数学表达式.是否有一个简单的方法isExpression(foo)实现?可能正在使用一些正则表达式?如果有的话请告诉我.谢谢

java mathematical-expressions

1
推荐指数
1
解决办法
4248
查看次数

Python点对象列表列表,不使用numpy

我是python的新手,并且让我的头围绕着数组,我对一个相当简单的问题感到震惊.我有一个列表列表,如下所示:

a = [[1,0,1,0,1],[0,0,1,0,1],[0,0,1,0,1],[1,1,1,0,1],[1,0,0,0,0]]
Run Code Online (Sandbox Code Playgroud)

我希望将每个列表的元素相互叠加.就像是:

a_dot = [1,0,1,0,1]*[0,0,1,0,1]*[0,0,1,0,1]*[1,1,1,0,1]*[1,0,1,0,0]
=[0,0,1,0,0]
Run Code Online (Sandbox Code Playgroud)

想知道我是否可以在使用numpy/scipy的情况下完成上述操作.

谢谢.

python computation mathematical-expressions dot-product

1
推荐指数
1
解决办法
495
查看次数

如何将数学表达式转换为C语句?

如何将以下每个数学表达式转换为C中的等效语句?

  1. 1 /(x ^ 2 + y ^ 2)

  2. (b ^ 2 - 4ac)的平方根

c mathematical-expressions

-1
推荐指数
1
解决办法
1万
查看次数