请编一个函数double_ Pat( hit_n,doableppl),它的功能 是:求出数组p中几个数的整数部分的和,并返回此值。例如: 若输入4和11.91,23.87,35.79,40.83,则输出109.0,整数部分的 值应小于10的16次方
时间: 2023-11-22 11:52:52 浏览: 67
以下是实现了你所需功能的 Python 代码:
```python
def double_Pat(hit_n, doableppl):
total = 0.0
for num in doableppl:
total += int(num)
return total
```
其中,`hit_n` 表示数组中元素的个数,`doableppl` 是包含所有数值的数组。该函数使用循环遍历数组中的每个元素,并将其转换为整数后相加得到总和,最后返回总和。
示例调用:
```python
arr = [11.91, 23.87, 35.79, 40.83]
print(double_Pat(4, arr)) # 输出 109.0
```
相关问题
用c语言编写请编一个函数double_ Pat( hit_n,doableppl),它的功能 是:求出数组p中几个数的整数部分的和,并返回此值。例如: 若输入4和11.91,23.87,35.79,40.83,则输出109.0,整数部分的 值应小于10的16次方
以下是用 C 语言编写的 double_Pat 函数:
```c
#include <stdio.h>
#include <math.h>
double double_Pat(int hit_n, double *doableppl) {
double sum = 0.0;
for (int i = 0; i < hit_n; i++) {
sum += floor(doableppl[i]);
}
return sum;
}
```
其中,hit_n 是数组的长度,doableppl 是一个指向数组的指针。函数中使用了 math.h 头文件中的 floor 函数,用于将浮点数向下取整。函数首先初始化 sum 为 0,然后遍历数组,对每个元素执行 floor 函数,将其整数部分加入 sum 中。最后返回 sum 即可。
可以在主函数中调用 double_Pat 函数进行测试:
```c
int main() {
double arr[] = {11.91, 23.87, 35.79, 40.83};
int n = sizeof(arr) / sizeof(double);
double result = double_Pat(n, arr);
printf("%.1f", result);
return 0;
}
```
输出结果为 109.0。
阅读全文