最大值和最小值的差

最大值和最小值的差

|-----------------------------|
| 💐The Begin💐点点关注,收藏不迷路💐 |

输出一个整数序列中最大的数和最小的数的差。

输入

第一行为M,表示整数个数,整数个数不会大于10000;

第二行为M个整数,以空格隔开,每个整数的绝对值不会大于10000。

输出

输出M个数中最大值和最小值的差。

样例输入

c 复制代码
5
2 5 7 4 2

样例输出

c 复制代码
5  

先读取输入的整数个数以及对应的整数序列,然后通过遍历该序列,找出其中的最大值和最小值,最后计算并输出它们的差值。

C语言代码

#include <stdio.h>

int main() {

int m;

scanf("%d", &m); // 读取输入的整数个数m

int nums[m]; // 定义数组,用于存储输入的整数序列

for (int i = 0; i < m; i++) {

scanf("%d", &nums[i]); // 循环读取m个整数,存入数组

}

int max = nums[0]; // 先假设第一个数为最大值,初始化最大值

int min = nums[0]; // 先假设第一个数为最小值,初始化最小值

for (int i = 1; i < m; i++) { // 从第二个数开始遍历数组(因为第一个数已作为初始值)

if (nums[i] > max) { // 如果当前数大于已记录的最大值

max = nums[i]; // 更新最大值

}

if (nums[i] < min) { // 如果当前数小于已记录的最小值

min = nums[i]; // 更新最小值

}

}

int diff = max - min; // 计算最大值与最小值的差

printf("%d\n", diff); // 输出差值

return 0;

}

C++ 语言代码

#include

using namespace std;

int main() {

int m;

cin >> m; // 输入整数的个数m

int nums[m]; // 创建数组存放整数序列

for (int i = 0; i < m; i++) {

cin >> nums[i]; // 依次输入m个整数到数组中

}

int max = nums[0]; // 初始把第一个数当作最大值

int min = nums[0]; // 初始把第一个数当作最小值

for (int i = 1; i < m; i++) { // 从第二个数开始循环遍历数组

if (nums[i] > max) { // 若当前数比已记录的最大值大

max = nums[i]; // 更新最大值

}

if (nums[i] < min) { // 若当前数比已记录的最小值小

min = nums[i]; // 更新最小值

}

}

int diff = max - min; // 求出最大值与最小值的差

cout << diff << endl; // 输出差值

return 0;

}

Java语言代码

import java.util.Scanner;

public class Main {

public static void main(String[] args) {

Scanner scanner = new Scanner(System.in);

int m = scanner.nextInt(); // 获取输入的整数个数m

int[] nums = new int[m]; // 定义数组来存储整数序列

for (int i = 0; i < m; i++) {

nums[i] = scanner.nextInt(); // 循环读取m个整数并存入数组

}

int max = nums[0]; // 初始假设数组中第一个数是最大值

int min = nums[0]; // 初始假设数组中第一个数是最小值

for (int i = 1; i < m; i++) { // 从第二个元素开始遍历数组

if (nums[i] > max) { // 如果当前元素大于已记录的最大值

max = nums[i]; // 更新最大值

}

if (nums[i] < min) { // 如果当前元素小于已记录的最小值

min = nums[i]; // 更新最小值

}

}

int diff = max - min; // 计算最大值与最小值的差值

System.out.println(diff); // 输出差值

}

}

Python语言代码

m = int(input()) // 获取输入的整数个数m

nums = list(map(int, input().split())) // 获取输入的整数序列,转换为列表

max_num = nums[0] // 先假设列表中的第一个数是最大值

min_num = nums[0] // 先假设列表中的第一个数是最小值

for num in nums[1:]: // 从列表的第二个数开始遍历(切片操作排除第一个数)

if num > max_num: // 如果当前数大于已记录的最大值

max_num = num // 更新最大值

if num < min_num: // 如果当前数小于已记录的最小值

min_num = num // 更新最小值

diff = max_num - min_num // 计算最大值与最小值的差

print(diff) // 输出差值

|---------------------------|
| 💐The End💐点点关注,收藏不迷路💐 |

相关推荐
武子康25 分钟前
Java-72 深入浅出 RPC Dubbo 上手 生产者模块详解
java·spring boot·分布式·后端·rpc·dubbo·nio
_殊途1 小时前
《Java HashMap底层原理全解析(源码+性能+面试)》
java·数据结构·算法
还债大湿兄1 小时前
《C++内存泄漏8大战场:Qt/MFC实战详解 + 面试高频陷阱破解》
c++·qt·mfc
椰椰椰耶2 小时前
【Spring】拦截器详解
java·后端·spring
没有bug.的程序员3 小时前
JAVA面试宝典 - 《MyBatis 进阶:插件开发与二级缓存》
java·面试·mybatis
倔强青铜33 小时前
苦练Python第18天:Python异常处理锦囊
开发语言·python
u_topian4 小时前
【个人笔记】Qt使用的一些易错问题
开发语言·笔记·qt
没有羊的王K4 小时前
SSM框架学习——day1
java·学习
珊瑚里的鱼4 小时前
LeetCode 692题解 | 前K个高频单词
开发语言·c++·算法·leetcode·职场和发展·学习方法
又菜又爱coding4 小时前
安装Keycloak并启动服务(macOS)
java·keycloak