c - 将范围划分为N个相等的数字

标签 c matlab

我正在尝试用 C 语言实现 Matlab 的 linspace 函数。我对如何制作该算法感到困惑..

如果假设我有一个数字 s=6.. 那么范围将为 -6 到 6。

如果是的话..

在这个范围内,如果我需要假设 4 个相等的数字,那么输出将为 -6, -2, 2, 6。

如果我需要 6 个相等的数字,那么输出将为 -6、-3.6、-1.2、1.2、3.6、6。

如果是奇数..

如果我需要假设 5 个相等的数字,那么输出将为 -6, -3, 0, 3, 6

如果我需要假设 7 个相等的数字,那么输出将为 -6, -4, -2, 0, 2, 4, 6

我该如何处理这个过程?

最佳答案

我不确定这是否正确。但以你为例。 s=6,范围 = -6 到 6

情况:偶数 n=4 -6 到 6,我们有 12 个单元,12/(n-1) = 单个单元的大小 = 12/(4-1) = 4 所以从-6开始,(-6+4)=-2,(-2+4)=2,(4+2)=6

情况:奇数 n=5 一个数字是0。现在我们需要4个数字,2个在0的左边,2个在0的右边。 -6 到 0 我们有 6 个单位/2 = 3 所以从-6开始,(-6+3)=3, 0, (0+3)=3, (3+3)=6

关于c - 将范围划分为N个相等的数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23533747/

相关文章:

c - 加载dll时访问冲突

c - 如何模拟阻塞事件来测试非阻塞套接字

matlab - 如何检查文件夹是否在搜索路径上

c - OPENSSL 如何存储和恢复 key 来加密和解密消息?

c - "watches"调试工具上的错误值

C 编译器 : not found in Clion

Matlab - 匿名函数中的for循环

algorithm - 不相交椭圆的最近邻居三重奏

python - Python 中的多元线性回归 - MATLAB 中 mvregress 的模拟?

matlab - matlab中unifrnd和rand()函数的区别