我需要生成一个大数组,范围从 0.00 到 10000000.00 IE 0.01 0.02 0.03 ... 1.51 1.52 1.583 ...等等
环顾四周后,我尝试了这个答案,它适用于整数,但不适用于小数
你没有指定语言,所以我将使用Python。
import numpy as np
numbers = np.arange(0, 10000000.01, 0.01)
# Print first 10 elements
print(numbers[:10])
# Print last 10 elements
print(numbers[-10:])
一个简单的方法,试试这个:
let array = [];
for (let i = 0; i <= 1000000000; i++)
{
array.push((i * 0.01).toFixed(2));
}
在javascript中,你可以尝试:
let numbers = [];
for (let i = 0; i <= 10000000; i += 0.01) {
numbers.push(parseFloat(i.toFixed(2))); //you can use toFixed(3) too if you want
}
请注意,创建这样一个非常大的数组将消耗大量内存,并可能导致性能问题。
const arr = Array.from(new Array(10000000), (_, index) => (index / 100).toFixed(2));
console.log(arr);
使用此代码,您将获得问题中描述的数字数组,点后有 2 个数字:0.00、0.01 等。
尝试以下方法
let array = [];
let val = 0.00;
do{
val += 0.01;
array.push(val);
}while(val<1000000000.00);
你没有指定语言,所以我将使用Javascript。
要生成范围从 0.00 到 10000000.00 的大型数字数组,您可以使用循环在 JavaScript 中创建数组。这是实现该目的的示例代码:
function generateIncrementedNumbers(start, end, step) {
const result = [];
for (let i = start; i <= end; i += 0.01) {
result.push(i.toFixed(2));
}
return result;
}
const startNumber = 0.0;
const endNumber = 10000000.0;
const largeArray = generateIncrementedNumbers(startNumber, endNumber);
console.log(largeArray);
在 JavaScript 中
function generateNumberRange(start, end, decimalPlaces) {
const step = 1 / Math.pow(10, decimalPlaces);
const range = [];
for (let num = start; num <= end; num += step) {
range.push(parseFloat(num.toFixed(decimalPlaces)));
}
return range;
}
// Example usage:
const startValue = 0.00;
const endValue = 10000000.00;
const decimalPlaces = 2;
const resultArray = generateNumberRange(startValue, endValue, decimalPlaces);
console.log(resultArray);