Scalar::Util的looks_like_number似乎是普遍建议的方法来确定一个字符串是否是一个数字.
为什么它认为字符串"0 but true"是一个数字?
use Scalar::Util 'looks_like_number';
print looks_like_number("0 but true"); # 1
Run Code Online (Sandbox Code Playgroud) bc 不喜欢用科学记数法表示的数字(又称指数表示法).
$ echo "3.1e1*2" | bc -l
(standard_in) 1: parse error
Run Code Online (Sandbox Code Playgroud)
但是我需要用它来处理用这种表示法表达的一些记录.有没有办法bc了解指数表示法?如果没有,我该怎么做才能将它们翻译成bc可以理解的格式?
我写了一个用Leibniz公式计算PI数的程序:
[![莱布尼茨公式]](https://i.stack.imgur.com/d962E.png)
我写了一个for循环,初始化类型为"int",循环工作正常,但是当我将初始化类型更改为"long"时,结果会发生变化.这仅在循环时间超过十亿时才会发生.这使得"int-loop"计算PI比"长循环"更准确.我不知道为什么会这样.请帮我理解这个问题.谢谢!这是我的代码.
public static void main(String[] args) {
double result1 = 0;
double result2 = 0;
double sign = 1;
for (int i = 0; i <= 1607702095; i++) {
result1 += sign/(2 * i + 1);
sign *= -1;
}
sign = 1;
for (long j = 0; j <= 1607702095; j++) {
result2 += sign/(2 * j + 1);
sign *= -1;
}
System.out.println("result1 " + result1 * 4);
System.out.println("result2 " + result2 * 4);
System.out.println("pi " …Run Code Online (Sandbox Code Playgroud) 将百分比字符转换为数字时遇到问题.例如,我想将"10%"转换为10%,但是
as.numeric("10%")
Run Code Online (Sandbox Code Playgroud)
回报NA.你有什么想法?
正如标题所述:
我有一个选择查询,我试图"按顺序"包含数字的字段,事实是这些数字实际上是以0开头的字符串,所以"order by"就是这样做...
...
10
11
12
01
02
03
...
Run Code Online (Sandbox Code Playgroud)
有什么想法吗?
编辑:如果我这样做:"... ORDER BY(字段+ 1)"我可以解决这个问题,因为不知何故,字符串在内部被转换为整数.这是一种像C's atoi一样"正式"转换它的方法吗?
我有一些计算正在进行并得到以下警告(即没有错误):
Warning messages:
1: In sum(myvar, na.rm = T) :
Integer overflow - use sum(as.numeric(.))
Run Code Online (Sandbox Code Playgroud)
在这个线程中,人们声明整数溢出根本不会发生.要么R不是过于现代,要么是不对.但是,我应该在这做什么?如果我使用as.numeric警告暗示我可能不会解释信息丢失的事实.myvar从.csv文件中读取,所以不应该知道需要更大的字段吗?它已经切断了什么吗?
什么是的最大长度integer或者numeric?你会建议任何其他字段类型/模式吗?
编辑:我跑:
R版本2.13.2(2011-09-30)平台:R Studio中的x86_64-apple-darwin9.8.0/x86_64(64位)
我有一个从公式生成的字符串,但是我只想使用该字符串,只要它的所有字符都是数字,如果不是我想做不同的事情,例如显示错误信息.
我一直在看,但我发现很难找到任何符合我想做的事情.我看过NSScanner,但我不确定它是否检查整个字符串然后我不确定如何检查这些字符是否是数字
- (void)isNumeric:(NSString *)code{
NSScanner *ns = [NSScanner scannerWithString:code];
if ( [ns scanFloat:NULL] ) //what can I use instead of NULL?
{
NSLog(@"INSIDE IF");
}
else {
NSLog(@"OUTSIDE IF");
}
}
Run Code Online (Sandbox Code Playgroud)
因此,经过几个小时的搜索,我偶然发现了一个完全符合我要求的实现.
因此,如果您要查看它们是否是您的NSString中的任何字母数字字符,则此处可用
-(bool) isNumeric:(NSString*) hexText
{
NSNumberFormatter* numberFormatter = [[[NSNumberFormatter alloc] init] autorelease];
NSNumber* number = [numberFormatter numberFromString:hexText];
if (number != nil) {
NSLog(@"%@ is numeric", hexText);
//do some stuff here
return true;
}
NSLog(@"%@ is not numeric", hexText);
//or do some more stuff here
return false;
} …Run Code Online (Sandbox Code Playgroud) //key & hash are both byte[]
int leftPos = 0, rightPos = 31;
while(leftPos < 16) {
//possible loss of precision. required: byte, found: int
key[leftPos] = hash[leftPos] ^ hash[rightPos];
leftPos++;
rightPos--;
}
Run Code Online (Sandbox Code Playgroud)
为什么Java中的两个字节的按位运算会返回一个int?我知道我可以把它转回到字节,但它看起来很傻.
有些书中提到的一些宝石与装饰数字#days,#megabytes,#minutes等等.这是只有在的ActiveSupport,还是有提供此功能用于(小)无轨宝石小宝石?我想在一个小小的宝石中使用这个功能作为DSL的一部分.