Java黑皮书课后题第6章:*6.5(对三个数排序)使用下面的方法头编写方法,按升序显示三个数

*6.5(对三个数排序)使用下面的方法头编写方法,按升序显示三个数题目题目概述破题代码:排序运行结果题目题目概述*6.5(对三个数排序)使用下面的方法头编写方法,按升序显示三个数:public static void displaySortedNumbers(double num1, double num2, double num3)编写程序,提示用户输入3个数字,调用方法以升序显示它们破题第一种方法:Math.max(a, b)在方法displaySortedNumbers中对三个数字调用
摘要由CSDN通过智能技术生成

*6.5(对三个数排序)使用下面的方法头编写方法,按升序显示三个数

题目

题目概述

*6.5(对三个数排序)使用下面的方法头编写方法,按升序显示三个数:
public static void displaySortedNumbers(double num1, double num2, double num3)
编写程序,提示用户输入3个数字,调用方法以升序显示它们

破题

第一种方法:Math.max(a, b)
在方法displaySortedNumbers中对三个数字调用Math.max()方法
如Math.max(num1, Math.max(num2, num3))得出最大值并在方法内输出
再比较剩下两个数,分别输出即可
(因为方法头有void,主方法只调用不输出,displaySortedNumbers()方法return;)

第二种方法:借助排序算法
如果num1>num2则调换两个值(仅互换值)
如果num1>num3则调换两个值(仅互换值)
如果num2>num3则调换两个值(仅互换值)
最后依次输出num1 num2 num3即可
但特别注意:两个double型数值由于存在误差,上面的比较大小可以换成:
num1 - num2 > 0.0001
num1 - num3 > 0.0001
num2 - num3 > 0.0001

代码:排序

import java.util.Scanner;

public class Test6_5 {
   
    public static void main(
  • 1
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值