要使用R程序查找第 **n** 个最高值,我们需要将值按降序排序,现在元素将按从高到低的顺序排列。现在我们可以根据n的值轻松打印所需的最高值。
这里我们使用内置函数 **sort()**。
sort(x, decreasing, na.last)
在这个R程序中,我们直接将值赋给内置函数。声明一个带有值的向量 **vect**,并为用户打印原始值。从用户读取值 **n** 以查找第 **n** 个最高值。现在,调用排序函数 `sort(vect, TRUE)[n]` 以查找第 **n** 个最大元素。
例如,取一个值为 **15, 25, 35, 25, 24, 45, 47, 10** 的向量
print(paste(n,"th highest value is", sort(vect, TRUE)[n]))
在程序行中,我们对向量进行排序并打印该向量的第 **n** 个值。排序后,向量值将为 **47 45 35 25 25 24 15 10**。如果 **n=1**,则显示最高值47;如果 **n=2**,则显示第2个最高值45,依此类推。
**步骤1**: 将变量 **vect** 赋值为向量值
步骤2:首先打印原始向量值
**步骤3**: 从用户读取 **n** 值以查找第 **n** 个最高值
**步骤4**: 调用函数 sort 为 **sort(vect, TRUE)[n]**,按降序排序数组并打印第 **n** 个值
vect = c(15, 25, 35, 25, 24,45, 47, 10)
print("Original Vectors:")
print(vect)
print("Finding nth highest value in a given vector:")
n = as.integer(readline(prompt="Enter value for n "))
print(paste(n,"th highest value is", sort(vect, TRUE)[n]))
"Original Vectors:" 15 25 35 25 24 45 47 10 "Finding nth highest value in a given vector:" Enter value for n: 4 "4 th highest value is 25"