在这里,我们将看到一个有趣的问题。我们将取一个数组,然后通过将每个元素除以前一个元素来找到总和。让我们考虑一个数组是{5, 6, 7, 2, 1, 4}。那么结果将是5 + (6 / 5) + (7 / 6) + (2 / 7) + (1 / 2) + (4 / 1) = 12.15238。让我们看看获取概念的算法。
算法
divSum(arr, n)
begin
sum := arr[0]
for i := 1 to n-1, do
sum := sum + arr[i] / arr[i-1]
done
return sum
end
Example
的中文翻译为:示例
#include <iostream>
using namespace std;
float divSum(int arr[], int n){
float sum = arr[0];
for(int i = 1; i<n; i++){
sum += arr[i] / float(arr[i - 1]);
}
return sum;
}
int main() {
int arr[6] = {5, 6, 7, 2, 1, 4};
int n = 6;
cout << "Sum : " << divSum(arr, n);
}
输出
Sum : 12.1524