定义一个数组含有10个随机整数[5, 15],求数组中的第二大值。
时间: 2024-05-02 15:21:42 浏览: 55
以下是Python代码实现:
```python
import random
# 生成随机数组
arr = [random.randint(5, 15) for _ in range(10)]
print("随机数组:", arr)
# 找出最大值和次大值
max_val = arr[0]
second_max_val = arr[0]
for i in range(1, len(arr)):
if arr[i] > max_val:
second_max_val = max_val
max_val = arr[i]
elif arr[i] > second_max_val:
second_max_val = arr[i]
print("第二大值为:", second_max_val)
```
输出:
```
随机数组: [9, 9, 7, 14, 12, 6, 11, 12, 13, 6]
第二大值为: 13
```
相关问题
定义一个数组含有10个随机整数[5, 15],求数组中的第二大值。用js实现
```js
const arr = [];
for (let i = 0; i < 10; i++) {
arr.push(Math.floor(Math.random() * 11) + 5);
}
arr.sort((a, b) => b - a);
console.log('第二大的值是:', arr[1]);
```
解释:
1. 首先定义一个空数组 `arr`。
2. 循环10次,每次随机生成一个整数,范围为[5, 15],并将其加入到 `arr` 中。
3. 使用 `sort` 方法将 `arr` 中的元素从大到小排序。
4. 取出排序后的第二个元素,即为数组中的第二大值。
定义一个数组含有10个随机整数[5,15],求数组中第二大值且第二大值如果跟第一个值相等就输出下一个,用js输出
以下是用JavaScript实现的代码:
```javascript
// 生成一个含有10个随机整数的数组
var arr = [];
for (var i = 0; i < 10; i++) {
arr.push(Math.floor(Math.random() * 11 + 5));
}
// 找到数组中第二大的值
var max1 = arr[0];
var max2 = arr[0];
for (var i = 1; i < arr.length; i++) {
if (arr[i] > max1) {
max2 = max1;
max1 = arr[i];
} else if (arr[i] > max2 && arr[i] < max1) {
max2 = arr[i];
}
}
// 判断第二大的值是否跟第一个值相等,如果相等则输出下一个
if (max2 === max1) {
console.log("第二大的值为:" + (max2 + 1));
} else {
console.log("第二大的值为:" + max2);
}
```
输出结果类似于:
```
第二大的值为:13
```
阅读全文