将前一个数除以C后的数组总和?
数组是相同数据类型的元素序列。在这个问题中,我们将考虑使用整数数组来解决该问题。在这个问题中,我们将找到通过将元素与进行处理的元素相除而得到的元素的总和。
让我们举几个例子来更好地理解这个问题-
示例1-
Array : 3 , 5 ,98, 345 Sum : 26
说明-3+5/3+98/5+345/98=3+1+19+3=26
我们已经将每个元素与其前一个元素相除,并且仅考虑了相除的整数部分才能找到总和。
示例2-
Array : 2, 5 , 8, 11, 43 , 78 , 234 Sum : 13
说明-2+2+1+1+3+1+3=13
算法
该算法遍历数组的每个元素。并将其除以其前面的元素。然后,将商值添加到sum变量。
Input : Array - int arr[] Output : int sum
Step 1: Initialize sum = arr[0] Step 2: for(i = 1 to size of arr ) follow step 3 Step 3 : sum = sum + (arr[i]/arr[i-0] ) Step 4: print the sum
这是一种简单的四步算法,用于在将数字与先前的数字相除后找到数组的和。我们已经根据数组的第一个元素初始化了总和,因为根据逻辑,第一个元素没有任何元素,这意味着它不能被任何元素除。因此考虑到循环会产生错误,因为我们将访问-1索引处的元素,这是错误的。
示例
#include<stdio.h> int main() { int arr[] = { 2, 5 , 8, 11, 43 , 78 , 234 }; int n = sizeof(arr)/sizeof(arr[0]); int sum = arr[0]; for (int i = 1; i < n; i++) { sum += arr[i] / arr[i - 1]; } printf("The sum of array after dividing number from previous numbers is %d \n", sum); return 0; }
输出结果
The sum of array after dividing number from previous number is 13.