我正在做一本书练习,写一个生成伪随机数的程序.我开始简单了.
#include "std_lib_facilities.h"
int randint()
{
int random = 0;
random = rand();
return random;
}
int main()
{
char input = 0;
cout << "Press any character and enter to generate a random number." << endl;
while (cin >> input)
cout << randint() << endl;
keep_window_open();
}
Run Code Online (Sandbox Code Playgroud)
我注意到每次运行程序时都会有相同的"随机"输出.所以我调查了随机数生成器并决定尝试播种,首先在randint()中包含它.
srand(5355);
Run Code Online (Sandbox Code Playgroud)
这只是反复生成相同的数字(我现在感觉很愚蠢.)
所以我认为我会聪明并实现这样的种子.
srand(rand());
Run Code Online (Sandbox Code Playgroud)
这基本上只是与程序在第一时间做的相同,但输出了一组不同的数字(这是有道理的,因为rand()生成的第一个数字总是41.)
我能想到的唯一让它更随机的是:
我是否在我脑海中,我现在应该停下来吗?选项2难以实施吗?还有其他想法吗?
提前致谢.
如何将字典"转换"为序列,以便按键值排序?
let results = new Dictionary()
results.Add("George", 10)
results.Add("Peter", 5)
results.Add("Jimmy", 9)
results.Add("John", 2)
let ranking =
results
???????
|> Seq.Sort ??????
|> Seq.iter (fun x -> (... some function ...))
我有一个XML文档和关联的模式,它将几个属性定义为具有该xs:boolean类型.对于词法值xs:boolean是true,false,1,和0,因此它似乎正确地选择与特定的布尔值属性,我不得不写类似:
@attribute='true' or @attribute='1'
Run Code Online (Sandbox Code Playgroud)
要么
@attribute='false' or @attribute='0'
Run Code Online (Sandbox Code Playgroud)
这看起来很冗长.
你可能期望某些东西boolean(@attribute)可以工作,但是这个boolean函数有不同的语义.
有没有更好的办法?这是架构感知处理器可以帮助的东西吗?
我正在运行一个FreeBSD服务器,我收到一条警告,说我的服务器已发送垃圾邮件.我没有把它设置为开放中继,我已经定制了sendmail配置.我想知道是谁发送了什么电子邮件以及他们的用户名,电子邮件主题以及他们发送的邮件总数.我想在日志上运行一个类似于处理Apache服务器日志时的日志的报告.
我有什么选择?
有没有办法防止PHP GD图像库耗尽内存?如果上传的图像太大,GD往往会耗尽内存,从而终止脚本.我希望它可以抛出一个可捕获的异常或其他东西,但唉它没有.
现在我正在使用一个拼凑在一起的脚本,首先发布一个ini_set('memory_limit', '128M'),如果有效,我通常都会设置.虽然可能无法实现服务器配置,但我还是试着估算所需的内存量(将分辨率,颜色深度,通道和软糖因素考虑在内),然后将其与memory_get_usage()如果函数存在,否则进行粗略估计.
到目前为止,整个过程是有效的,但它远非优雅,在某些边缘情况下会失败,我敢肯定.有没有更好的方法来做到这一点,即GD必须优雅地失败,而不是将一切都停止?
在存储过程(具有名为'paramDate'的日期参数)中,我有一个像这样的查询
select id, name
from customer
where period_aded = to_char(paramDate,'mm/yyyy')
Run Code Online (Sandbox Code Playgroud)
Oracle会将paramDate转换为每行的字符串吗?
我确信Oracle不会,但我被告知Oracle会.事实上,我认为如果函数的参数是约束(在查询中没有获得fierld或计算值),结果应该总是相同的,这就是Oracle应该只执行一次此转换的原因.然后我意识到我有时会在几个函数中执行DML语句,这可能会导致结果值发生变化,即使每行都没有变化.
这应该意味着我应该在将这些值添加到查询之前转换它们.
无论如何,也许好的"已知函数"(内置)会被评估一次,甚至我的函数也会被评估.
无论如何,再次......
oracle会执行一次to_char还是Oracle会为每一行执行该操作?
谢谢你的回答
我工作的一个移植代码库的Java可可/ Objective-C的用于台式机Mac OS X的Java代码中使用了大量的和大量的与像checked异常的方法:
double asNumber() throws FooException {
...
}
Run Code Online (Sandbox Code Playgroud)
在Objective-C中表示这些的最佳方法是什么?例外或错误输出参数?
- (CGFloat)asNumber {
... // possibly [FooException raise:format:];
}
Run Code Online (Sandbox Code Playgroud)
要么
- (CGFloat)asNumberError:(NSError **)outError {
...
}
Run Code Online (Sandbox Code Playgroud)
我觉得out-errors通常是Objective-C的更好解决方案,但正如你所看到的......很多像上面那样的方法看起来很尴尬.而且,还有很多这些.
当然要记住,由于这些是Java 中的检查异常,我需要在调用这些方法的地方添加@try块或if (*outError) {...}检查(很多地方).
我记得听说虽然@try在Objective-C中输入块曾经是昂贵的,但它在64位或SL或其他一些新的环境中是便宜的(不记得确切).我完全不关心向后兼容性,所以我绝对愿意只为新的热度而设计.
有没有我可以用来查找JAVA_HOME目录的linux命令?我已经尝试打印出环境变量("env")但我找不到该目录.
我在我的一本铁轨书中看到了我应该设置的东西
ServerSignature Off
ServerTokens Prod
Run Code Online (Sandbox Code Playgroud)
当应用程序搞砸时,禁止apache在生产中显示服务器信息.这有必要吗?我在prod中看到的唯一错误消息是标准的Rails生成错误消息.我从未看到任何服务器信息.
我需要设置其他与安全相关的apache配置变量吗?
我想我有点疯狂,当我在我的本地网络服务器上测试它时,它在我去实况网站时工作正常,它返回一个空白字符串而不是我期待的数据
我不熟悉C#,所以我只是想检查一下我做得对.数据只是简单的ascii文本
wc = new WebClient();
wc.Headers.Add("Content-Type", "application/x-www-form-urlencoded");
response = wc.UploadData(this.urlUpdate, Encoding.ASCII.GetBytes("data=" + HttpUtility.UrlEncode(buf.ToString())));
s = Encoding.ASCII.GetString(response);
Run Code Online (Sandbox Code Playgroud)