gpt4 book ai didi

ios - 将 double 类型的数组元素相乘

转载 作者:行者123 更新时间:2023-11-30 18:48:24 25 4
gpt4 key购买 nike

我有这个数组。

double numbers[] = {40.0, 8.0, 45.0, 55.0, 30.0, 10.0, 20.0};

和一些乘数

CGFloat multiplier = 2.67;

我想将数字数组的每个元素乘以乘数。所以数组会像

double numbers[] = {106.80, 21.36, 120.15, 146.85, 80.1, 26.7, 53.4};

我收到“将‘double’发送到不兼容类型‘id _Nonnull’的参数”。

在该数字数组中找到 max no 的最简单方法是什么。

最佳答案

C 数组比 ObjC NSArray 更快,但当前的设备速度相当快,因此使用对象编写代码通常更好,虽然损失了速度,但提高了可读性。

您的问题的解决方案“我想将数字数组的每个元素乘以乘数。在该数字数组中找到最大否的最简单方法是什么。”是:

double numbers[] = {40.0, 8.0, 45.0, 55.0, 30.0, 10.0, 20.0};
CGFloat multiplier = 2.67;
double maxValue = -DBL_MAX;
for (int i = 0; i < (sizeof(numbers) / sizeof(double)); i++) {
numbers[i] *= multiplier; // multiply value
maxValue = MAX(numbers[i], maxValue); // find max value
}
NSLog(@"Max=%f.2", maxValue);

输出如下:

(double) maxValue = 146.84999999999999
(double [7]) numbers = ([0] = 106.8, [1] = 21.359999999999999, [2] = 120.14999999999999, [3] = 146.84999999999999, [4] = 80.099999999999994, [5] = 26.699999999999999, [6] = 53.399999999999999)

但是,如果您错误地、缺乏知识或其他原因这样做:我强烈建议使用 NSArray ,除非性能是这里的已知问题。

关于ios - 将 double 类型的数组元素相乘,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46004417/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com