실수

프로그래밍에서 모든 숫자는 우선 정수(integer)와 분수(float)로 구별됩니다. ).

변수의 유형을 결정하기 위해 Python에는 내장 type() 함수가 있습니다. <예비> 이름 = "이반" print(유형(이름))  #화면에 <class 'str'>이 표시됩니다. n=5 print(유형(n))  # <class 'int'> r=5.0 print(type(r))  # <class 'float'>
5.0 값은 십진수로 표시되는 숫자입니다.  프로그래밍에서 모든 분수는 표기법에 소수점이 있는 숫자입니다. 이러한 숫자를 실수
라고 합니다.  
실수는 소수점이 포함된 숫자입니다. 정수와 소수 부분은 수학에서처럼 쉼표가 아닌 으로 서로 구분됩니다.

예: 숫자 \(1 \over 2\)\(\sqrt 2\)   실수입니다. int는 이러한 숫자를 저장하기에 충분하지 않습니다. 
Python은  float.
데이터 유형을 사용하여 실수를 나타냅니다.
예제의 r 변수에서와 같이 숫자의 소수 부분이 0과 같더라도 컴파일러는 여전히 메모리에 실제 변수를 생성합니다. 숫자 표기법에 소수점이 있기 때문에!. 말하자면 소수점은 번역가에게 실제 변수를 생성해야 한다는 신호입니다. 

매우 큰 숫자와 매우 작은 숫자  "부동 소수점"을 사용하여 작성 (소위 과학적 형식).  
과학적 형식에서 숫자는 가수(숫자의 중요한 부분) 지수로 표시됩니다. 작성 시 가수와 지수는 문자 e(어느 정도 10을 나타냄)로 서로 구분됩니다. 

예를 들어 전자의 전하 값( \(1.60217662 \times 10^{-19}\) C)을 변수, 다음 형식으로 작성  ; <예비> 엘 = 1.60217662e-19
제한된 수의 비트가 저장에 할당되기 때문에 거의 모든 실수는 완벽한 정확도로 컴퓨터 메모리에 저장할 수 없습니다.
 
따라서 실수로 계산할 때 표현 부정확성으로 인한 오차가 누적됩니다. 또한 할당된 공간이 적을수록 이 오류는 더 커집니다.

 

입력

input() 함수를 이용하여 실수를 입력하기 위해서는 input() 함수의 결과인 문자열을 함수 >float()를 사용하는 실수: <예비> x = float(입력()) 한 줄에서 한 번에 여러 값을 입력해야 하는 경우 정수와 동일한 방법을 사용합니다. <예비> x, y = 맵(플로트, 입력().스플릿())

 

출력

실수를 표시할 때 기본적으로 소수점 이하 16자리가 표시됩니다. 이 형식이 항상 필요한 것은 아닙니다. 출력 형식을 줄여야 하는 경우 형식 출력 또는 F-문자열을 사용하세요.


형식 출력
이렇게 하려면 출력하려는 ​​문자열에 format() 메서드를 적용합니다. 그리고 행 형식 내부는 콜론 뒤에 중괄호로 작성됩니다. format() 함수의 괄호는 변수(또는 상수)의 이름을 나타내며 그 값은 지정된 형식의 중괄호 대신 문자열로 대체됩니다. 변수의 수는 중괄호의 수와 일치해야 합니다. 이 방법은 Python 버전 3부터 작동합니다.
 
<헤드> <몸>
 


F-문자열 
형식이 지정된 문자열을 표시하는 또 다른 방법은 f-문자열(f-문자열)을 사용하는 것입니다. 이 방법은 버전 3.6부터 Python에서 사용할 수 있습니다. <예비> print(f"{x:f}") print(f"{x:.3f}") print(f"{x:12.4e}") F-문자열(또는 F)로 시작하는 와일드카드 문자열입니다. 어떤 변수의 값을 문자열에 삽입할 때마다  를 추가해야 합니다. 중괄호 {}로 묶인 변수 이름. 중괄호 안에는 fomat().
메서드와 유사한 형식 지정 메서드를 지정할 수 있습니다.

format() 메서드 및 F-strings 외에도 다른 방법을 사용하여 출력 형식을 지정할 수 있습니다. 다음과 같이 출력 문을 작성하여 동일한 결과를 얻습니다. <예비> print("%f" % (x)) print("%.3f" % (엑스)) print("%12.4e" % (x)) 이 서식 지정 방법은 C 언어의  printf() 기능을 모방한 것입니다. 이 방법은 구식으로 간주되지만 경우에 따라 더 편리합니다. 그 외에 이 방법은 Python 버전 2.5 이하에서 작동하는 유일한 방법입니다(여기에 언급된 방법 중).

  설명 화면출력
<예비> x = 1/6    
<예비> print("{:f}".format(x)) format :f는 기본적으로 6자리를 출력합니다.  소수 부분에서 <예비> 0.166667
<예비> print("{:.3f}".format(x)) :.3 점 뒤 3문자 출력을 의미 <예비> 0.167
<예비> print("{:12.4e}".format(x)) :12.4 - 첫 번째 숫자(12)는  숫자를 표시할 총 위치 수(점 포함)
두 번째 숫자(4) - 소수 부분의 자릿수
format e - 과학적 형식으로 숫자를 표시합니다.
<예비> 1.6667e-01
실수를 정수로 변환

문제를 풀 때 종종 실수를 가장 가까운 정수 값으로 반올림해야 합니다. 이를 위한 두 가지 기능이 있습니다.

기억해야 합니다!
<올>
  • 함수 int(x) - 실수 x의 소수 부분을 버립니다.
  • 함수 round(x) - 실수 x를 가장 가까운 정수로 반올림합니다(숫자의 소수 부분이 0.5인 경우 숫자는 다음으로 반올림됩니다. 가장 가까운 짝수).
  •  
    <예비> 인쇄(정수(20.12345)) # 20 인쇄(라운드(2.5)) # 2 인쇄(라운드(3.5)) # 4 인쇄(라운드(-2.5)) # -2 print(round(-3.5)) # -4