JAVA : Math 클래스의 메소드

keymu·2024년 9월 20일

Math 클래스의 메소드

Math.random()
0.0 <= r < 1.0 사이의 난수 발생(double)
double Math.floor(num)
num이하의 수 중 가장 큰 정수(바닥)
double Math.ceil(num)
num이상의 수 중 가장 작은 정수(천장)
long Math.round(num)
num에서 소수점 사사오입 (반올림)

package com.lec.java.j12_07_Math;

import java.util.Random;

/* Math 클래스의 메소드
 */
public class Method07Main {

    public static void main(String[] args) {
        System.out.println("Math 객체의 메소드");

        // Math.random() : 0.0 <=  r < 1.0 사이의 난수 발생(double)
        double r;
        for (int i = 0; i < 10; i++) {
            r = Math.random();
            System.out.println(r);
        }

        System.out.println();
        // double Math.floor(num): num이하의 수 중 가장 큰 정수(바닥)
        // double Math.ceil(num): num이상의 수 중 가장 작은 정수(천장)
        // long Math.round(num): num에서 소수점 사사오입 (반올림)
        for (var d : new double[]{2.7, -1.2, -2.8}) {
            System.out.println("       floor  ceil   round");
            System.out.printf("%5.1f] %5.1f %5.1f  %3d\n", d, Math.floor(d), Math.ceil(d), Math.round(d));
        }

        System.out.println();
        System.out.println("1,2,3 범위중 난수 발생시키기");
        for (int i = 0; i < 5; i++) {
            double num;
            num = Math.random(); //0.0~1.0
            num = num * 3;
            num = Math.floor(num);
            num = num + 1;

            System.out.println((int)num);
        }

        System.out.println();
        System.out.println("Random 객체 사용하여 난수 출력");
        Random rand = new Random();
        for (int i = 0; i < 5; i++) {
            System.out.println(rand.nextInt(3)); //0~2 사이 난수
        }

        System.out.println("\n프로그램 종료");
    } // end main()

    //

} // end class
profile
Junior Backend Developer

0개의 댓글