Java输入多个不同数据类型的数值求和求平均值

执行结果截图:

 

 代码:

import java.util.Scanner;

public class WhileScanner {
/* 作为一个计算器使用者,我们可以从键盘输入多个数字,每输入一个数字用回车确认,
同时可以累计数字个数,累加数字。
通过输入非数字来结束输入,并输出所有已输入数字的总和以及求平均数。
*/
public static void main(String[] args) {
// 实例化一个扫描器对象,用于从键盘接收数据
Scanner scanner = new Scanner(System.in);

double sum = 0;
int currentDataCount = 0;
System.out.println("请输入数字(整数或小数):");

// While语句块会接收键盘输入的数据,并判断输入的数据是否是数字,如果是就执行While循环
while (scanner.hasNextDouble()){
// 定义所接收的数据的类型是double类型
double x = scanner.nextDouble();

// 对输入的数据个数进行计数
currentDataCount++;

// 对输入的数据进行累加
sum = sum + x;

// 将当前输入的数据转化为字符串
String currentInputData = String.valueOf(x);

// 将当前已输入数据求和的结果转化为字符串
String currentSum = String.valueOf(sum);

// 定义格式化输出,其中%s指字符串类型,%d指int类型,%n是换行符
String sentenceFormat = "%s 是你输入的第 %d 个数据, 然后当前数据之和是 %s %n";

// 格式化输出显示当前输入的数据,已输入数据的个数累计,以及显示对当前已输入数据进行求和的结果
System.out.printf(sentenceFormat, currentInputData, currentDataCount, currentSum);
}

System.out.println("输入数字之和" + sum);
System.out.println("输入数字的平均值为" + (sum / currentDataCount));

scanner.close();
}
}
posted @   JohnnyH  阅读(1043)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
· SQL Server 2025 AI相关能力初探
点击右上角即可分享
微信分享提示