小编onu*_*tas的帖子

octave opengl_renderer:init_gl_context中发生错误1286

当我使用函数图或imagesc绘制图形时,我遇到了这些错误.有任何想法吗?

在此输入图像描述

在此输入图像描述

gnuplot octave

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

如果我们在不同的机器上将c ++ 11 mt19937作为相同的种子,我们将获得相同的随机数序列

从灵感和类似的问题,我想学习如何做在C++ 11周的行为mt19937伪随机数生成器,当两个单独的机器,它与相同的输入种子.

换句话说,我们有以下代码;

std::mt19937 gen{ourSeed};
std::uniform_int_distribution<int> dest{0, 10000};
int randNumber = dist(gen);
Run Code Online (Sandbox Code Playgroud)

如果我们在不同的时间在不同的机器上尝试这个代码,我们每次都会获得相同的randNumber值序列或不同的序列吗?

在任何一种情况下,为什么会这样呢?

还有一个问题:

无论种子如何,这段代码会无限地随机生成数字吗?我的意思是,例如,如果我们在一个运行数月但没有停止的程序中使用这个代码块,那么数字的生成或数字的一致性会有问题吗?

c++ random c++11

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

如何生成随机"足够"的随机整数?

我正在尝试解决Project Euler中的第280个问题,为此我编写了以下模拟;

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <sys/time.h>

/* Directions

    1
2       3
    4
*/

int grid[5][5] = {
    {0, 0, 0, 0, 2},
    {0, 0, 0, 0, 2},
    {0, 0, 0, 0, 2},
    {0, 0, 0, 0, 2},
    {0, 0, 0, 0, 2}
};

int InitPos[2] = {2, 2};

int MaxExp = 5000000;

bool Success = false;
int StepCount = 0;
int ExpNumber = 1;
int AntsBag = 0;
void Init();
void CarryFood(int * pos); …
Run Code Online (Sandbox Code Playgroud)

random performance probability probability-density probability-distribution

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

为什么 ($ 3) 有签名 (a -&gt; b) -&gt; b?

Learn you a Haskell 中,给出了以下示例:

map ($ 3) [(4+), (10*), (^2), sqrt]
[7.0,30.0,9.0,1.7320508075688772]  
Run Code Online (Sandbox Code Playgroud)

但是,我不明白为什么会这样。

函数的签名是

Prelude> :info ($)
($) :: (a -> b) -> a -> b
Prelude> :t ($ 3)
($ 3) :: Num a => (a -> b) -> b
Run Code Online (Sandbox Code Playgroud)

然而,->是一个左结合运营商,所以$ :: (a -> b) -> a -> b实际上((($ :: (a-b))-> a)-> b),所以不宜3($ 3)对应(a->b)的功能是函数的第一个“变量” $?即为什么是($ 3)签名的函数(a -> b) -> b …

haskell partial-application partialfunction

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

为什么引用的数组值没有改变?

我试图用数组乘以数组的每个组件,为此,尝试了以下方法;

1-)

@foo = (1, 2, 3, 5, 6);
vectorScalarMultiply(\@foo);
print @foo, "\n";

sub vectorScalarMultiply
{
    my $l_vectorRef = $_[0];
    for (my $var = 0; $var < scalar(@temp); $var++) {
        $l_vectorRef->[$var] = $l_vectorRef->[$var] * 5;
    }
}
Run Code Online (Sandbox Code Playgroud)

1的输出;

12356

2-)

@foo = (1, 2, 3, 5, 6);
vectorScalarMultiply(\@foo);
print @foo, "\n";
sub vectorScalarMultiply
{

    my $l_vectorRef = $_[0];
    map { $l_vectorRef->[$_] * 5 } { $l_vectorRef->[$_] };
}
Run Code Online (Sandbox Code Playgroud)

2的输出;

123456

3-)

@foo = (1, 2, 3, 5, 6);
@temp = …
Run Code Online (Sandbox Code Playgroud)

perl pass-by-reference

3
推荐指数
2
解决办法
77
查看次数

什么`... - > ta - > ...`在Haskell中的类型签名中意味着什么?

在功能符号签名allany,我看到以下内容:

Prelude> :t all 
all :: Foldable t => (a -> Bool) -> t a -> Bool
Prelude> :t any
any :: Foldable t => (a -> Bool) -> t a -> Bool
Run Code Online (Sandbox Code Playgroud)

但是,什么... -> t a ->...意思呢?

是不是都ta一个类型变量?如果是这样,两个类型变量的并置在Haskell中意味着什么?

haskell types

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

八度:函数不会返回多个值

为了解决我的问题,让我们考虑最基本的功能

function [x, z] = main ()
  x = 1;
  z = 2;
endfunction
Run Code Online (Sandbox Code Playgroud)

当我执行此函数时,输出为

ans = 1

而我应该得到类似的东西

ans = 1

      2
Run Code Online (Sandbox Code Playgroud)

那为什么会这样呢?问题是什么?

function return-value octave

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

OpenGL:绘制多边形时,如果第一个顶点位于屏幕空间之外(三角扇)

我正在关注计算机图形通过OpenGL,第2版由Sumanta Guha第二版,并在第35页,它说,

从提高(原件)square.cpp的第一个顶点glVertex3f(20.0, 20.0, 0.0)glVertex3f(20.0, 20.0, 1.5)原因广场-实际上,新的数字是不是正方形更多-被裁剪.相反,如果第二个顶点从升起glVertex3f(80.0, 20.0, 0.0)glVertex3f(80.0, 20.0, 1.5),那么这个数字是从当第一个顶点提出修剪过,但非常不同.为什么?对称性结果不应该相似吗?

提示:OpenGL在将它们三角形化为三角形之后绘制多边形,其中多边形的第一个顶点是扇形的中心.例如,图2.16中的扇形由顶点v0周围的三个三角形组成.

相应代码的样子

  glVertex3f(20.0, 20.0, 0.0);
  glVertex3f(80.0, 20.0, 0.0);
  glVertex3f(80.0, 80.0, 0.0);
  glVertex3f(20.0, 80.0, 0.0);
Run Code Online (Sandbox Code Playgroud)

如果我只将第一个顶点的z轴设置为1.5f,我得到这样的输出,

在此输入图像描述

如果我只将第二个顶点的z轴设置为1.5f,我会得到以下输出

在此输入图像描述

在后一种情况下,我可以理解为什么我因为削波而得到那个输出,但是我不明白为什么我在前一种情况下得到那个输出.

c++ opengl macos

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

Haskell如何知道`xs`是函数定义中的列表?

book.realworldhaskell.org,条件评估部分下的类型和函数部分,给出了以下示例:

 -- file: ch02/myDrop.hs
 myDrop n xs = if n <= 0 || null xs
               then xs
               else myDrop (n - 1) (tail xs)
Run Code Online (Sandbox Code Playgroud)

我也理解函数的实现,但我的问题是,如何哈斯克尔知道xs是一个列表

haskell functional-programming

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

找到到集合的最小距离

我有两组,A 和 B,都包含一些粒子的位置。我想要做的是以下内容:

For each element a in A, 
    Calculate the minimum distance between a and the elements of B.
Put these distances in to a list and return.
Run Code Online (Sandbox Code Playgroud)

我知道如何用外观来做到这一点,但我不知道如何使用data.table语法快速地做到这一点 。

r data.table

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