mwultong Blog ... 프로그래밍 / 계산기

컴퓨터 엑셀 워드 포토샵 구글어스 WINDOWS JAVASCRIPT JAVA C++

 
Thursday, January 25, 2007

Java/자바] 실수의 지수 표기법 (Scientific Notation;과학적 표기법)


예를 들어 1.00 을 1.000000e+00 이런 식으로 표현하는 방법입니다.

printf 함수 스타일의 포맷 출력을 하는 format() 메소드에서 %e 라는 형식 지정자를 사용합니다.


숫자를 지수 표기 법으로 출력 예제


파일명: Foo.java
class Foo {
  public static void main(String[] args) {

    double num;


    System.out.println("    [ -3.0 에서 3.0 까지 ]");

    for (num = -3.0; num <= 3.0; num++)
      System.out.format("%.2f = %e%n", num, num);




    System.out.println();
    System.out.println("    [ 0.0 에서 100.0 까지 ]");

    for (num = 0.0; num <= 100.0; num += 10.0)
      System.out.format("%.2f = %e%n", num, num);




    System.out.println();
    System.out.println("    [ 천 단위 이상 ]");

    num = 1000.0;
    System.out.format("%.2f = %e%n", num, num);

    num = 10000.0;
    System.out.format("%.2f = %e%n", num, num);

    num = 30000.0; // 그리고 e 를 대문자 E 로 출력
    System.out.format("%.2f = %E%n", num, num);

    num = 35555.0;
    System.out.format("%.2f = %e%n", num, num);

    num = 35555.123456789;
    System.out.format("%.2f = %e%n", num, num);

    num = 35555.123456789; // 정밀도 높여 출력
    System.out.format("%.16f = %.16e%n", num, num);




    System.out.println();
    System.out.println("    [ 양수/음수 ]");

    num = 35555.0;
    System.out.format("%.2f = %e%n", num, num);

    num = -35555.0;
    System.out.format("%.2f = %e%n", num, num);




    System.out.println();
    System.out.println("    [ 1보다 작은 수 ]");

    num = 1.0;
    System.out.format("%f = %e%n", num, num);

    num = 0.0;
    System.out.format("%f = %e%n", num, num);

    num = 0.1;
    System.out.format("%f = %e%n", num, num);

    num = 0.01;
    System.out.format("%f = %e%n", num, num);

    num = 0.005;
    System.out.format("%f = %e%n", num, num);

    num = 0.99;
    System.out.format("%f = %e%n", num, num);

    num = -0.99;
    System.out.format("%f = %e%n", num, num);


  }
}


가령 3.555500e+04 이런 숫자가 있을 때

10의 4승에, 3.555500 을 곱하면 35555.00 이 나오게 됩니다.

따라서 3.555500e+04 = 35555.00 입니다.


컴파일 및 실행 결과 화면:
D:\Z>javac Foo.java && java Foo
    [ -3.0 에서 3.0 까지 ]
-3.00 = -3.000000e+00
-2.00 = -2.000000e+00
-1.00 = -1.000000e+00
0.00 = 0.000000e+00
1.00 = 1.000000e+00
2.00 = 2.000000e+00
3.00 = 3.000000e+00

    [ 0.0 에서 100.0 까지 ]
0.00 = 0.000000e+00
10.00 = 1.000000e+01
20.00 = 2.000000e+01
30.00 = 3.000000e+01
40.00 = 4.000000e+01
50.00 = 5.000000e+01
60.00 = 6.000000e+01
70.00 = 7.000000e+01
80.00 = 8.000000e+01
90.00 = 9.000000e+01
100.00 = 1.000000e+02

    [ 천 단위 이상 ]
1000.00 = 1.000000e+03
10000.00 = 1.000000e+04
30000.00 = 3.000000E+04
35555.00 = 3.555500e+04
35555.12 = 3.555512e+04
35555.1234567890000000 = 3.5555123456789000e+04

    [ 양수/음수 ]
35555.00 = 3.555500e+04
-35555.00 = -3.555500e+04

    [ 1보다 작은 수 ]
1.000000 = 1.000000e+00
0.000000 = 0.000000e+00
0.100000 = 1.000000e-01
0.010000 = 1.000000e-02
0.005000 = 5.000000e-03
0.990000 = 9.900000e-01
-0.990000 = -9.900000e-01

D:\Z>



▶▶ 자바/Java] printf(), sprintf() 함수 포맷 출력 구현, System.out.println()으로


지수 표기법 온라인 변환기: ▶▶ 지수 표기법 변환기, 과학적 숫자를 보통 숫자로 변환; Exponential Scientific Notation Convert




tag: java
자바 | Java

0 Comments:

<< Home RSS 2.0 feed

구글 Google 에서 제공하는 무료 블로그 서비스인 블로거 Blogger 의 인터넷 주소는 www.blogger.com 입니다. Blogger 에 블로그를 만들면, blogspot.com 이라는 주소에 블로그가 생성됩니다.
블로그를 직접 방문하지 않고도 최신 게시물을 구독하려면 RSS 2.0 feed 주소를 리더기에 등록하시면 됩니다.
Previous Posts
Monthly Archives
Top