대학교 수업/Python

3.2 새내기파이썬 3단원 - 예제

kicdor 2024. 4. 29. 15:29
반응형

1) 다음 프로그램을 작성하라

나눠지는 : 10

나누는 : 3

 10 3 나눈 몫은  3

 10 3 나눈 나머지는  1

: x=int(input("나눠지는 : "))

y=int(input("나누는 : "))

print(f" {x} {y} 나눈 몫은 ",x//y)

print(f" {x} {y} 나눈 나머지는 ", x%y)

 

 

2) 다음 프로그램을 작성하라 (divmod() 사용)

나눠지는 : 10

나누는 : 3

몫은  3 나머지는  1

:  x=int(input("나눠지는 : "))

y=int(input("나누는 : "))

q , r = divmod(x,y)

print("몫은 ",q,"나머지는 ",r) (divmod() : 숫자 개를 받아서, 나눗셈의 몫과 나머지를 튜플로 반환함. 파이썬 표준 라이브러리의 일부)

 

 

3) 요일 맞추기. (오늘이 일요일 , 10 후는?)  (=0, =1, =2…)

: today = 0

print( (today + 10)%7)     (결과 = 3. 수요일)

 

 

4) 2^7 계산

: print(2**7)    (결과 = 128)               

 

 

5) 원리금 계산 프로그램  (원리금합계 = 원금(1+이자율)^기간)

원금 : 1000

이자율 : 0.05

기간 : 10

원리금 합계는 1628.894626777442

: a = int(input("원금 : "))

r = float(input("이자율 : "))

year = int(input("기간 : "))

total = a*(1+r)**year

print(f"원리금 합계는 {total}")

 

 

6)  x1, y3.0, z (1/2)+3 할당하라.       a,b,c 0 할당하라.

: x=1

y=3.0

z=(1/2)+3

a = b = c = 0

print(x,y,z,a,b,c)                       (결과 = 1    3.0    3.5   0   0   0)

 

 

7) x1, y200 할당하고, xy 값을 교환하라

: x=1

y=200

x,y=y,x

print("x", x, "y", y)                 (결과 = x 200 y 1)

 

 

8) 출력값은?

x=100

x+=2

print(x)

x-=2

print(x)

: 102

100

 

 

9) 출력값은?

a = 100

result = (a>1)

print(result)

: True             (result 부울 값을 저장하는 변수이다. Result 부울변수)

 

 

10) 출력값은?

s1 = "hello"

s2 = "hello"

print(s1==s2)

: True

 

 

11) 출력값은?

s1 = "hello"

s2 = "hello"

print(s1==s2)

: False    (파이썬은 대소문자 구분)

 

 

12) 출력값은?

s1 = "A"

s2 = "B"

print(s1<s2)

: True           (A 1, B 2 라고 생각) (A…..Z순서로 작음….)

 

 

12) 출력값은?

s1 = "Audrey"

s2 = "Grace"

print(s1<s2)

: True    

 

 

13) 출력값은?

s1 = "audrey"

s2 = "Grace"

print(s1<s2)

: False         (+대문자 : 소문자보다 작은 취급)

 

 

14) 출력값은?  (실수와 실수 비교) (3= 1.7320508075…)

from math import sqrt                 #수학기호 불러오기      #sqrt =

n = sqrt(3.0)                   #n = 3

print(n*n == 3.0)        

: False                       (3 1,7320… 이기 때문에, (3*3) 완전히 3.0 아니다. 그래서 False)

 

 

15) 출력값은?          (abs() : 절대값을 계산해서 반환함)

from math import sqrt 

n = sqrt(3.0)

print( abs(n*n - 3.0) < 0.00001 )

: True

 

 

16) 출력값은? (비트 연산자)  (bin() : 이진수)

a = 0b00001101

b = 0b00001010

print ("a&b ”,    bin(a&b),    ", a|b ",     bin(a|b),     ", a^b ",     bin(a^b))

print ("a&b ", a&b,", a|b ", a|b, ", a^b ", a^b)         

print("~a ", bin(~a))

print("~a ", ~a)

print("~a ", bin(~a&255))

print("~a ", ~a&255)

 

: a&b 0b1000 , a|b 0b1111 , a^b 0b111

a&b 8 , a|b 15 , a^b 7

~a -0b1110

~a -14                         (부호비트까지 자동으로 반전됨)

~a 0b11110010

~a 242                        (반전방지로 &255 붙임.   8비트로 제한시키는 역할)

 

 

17) 세탁기가 8개의 센서가 있다. 2 센서가 1이면 문이 열린 것이다.     (센서 7,6,5,4,3,2,1,0)

세탁기의 문이 열렸는지 확인하는 코드이다. 문열림상태는?

status = 0b01101110

print("문열림 상태 :", ((status & 0b00000100) != 0))

: 문열림 상태 : True

 

 

18) 출력값은?

a=0b01101101

print( "a 오른쪽으로 한칸 이동 :", bin(a>>1))

print("a 왼쪽으로 한칸 이동 : ", bin(a<<1))

print("a>>1 값은", a>>1, "a<<1 값은", a<<1)

: a 오른쪽으로 한칸 이동 : 0b110110

a 왼쪽으로 한칸 이동 :  0b11011010

a>>1 값은 54 a<<1 값은 218

( 앞에 밀리는 부분은 사라짐. 뒤에 부분은 0)

 

 

19) 출력값은?:

x= 3.14

print(int(x))

y=3

print(float(y))

: 3

3.0

 

 

20) 출력값은? (round() : 반올림)

x=1.723456

print(round(x))

print(x)

: 2      

1.723456             (변수 자체가 변하는 것은 아님)

 

반응형