python 1주차 복습
컴퓨터 프로그램 : 특정한 목적을 달성하기 위해 만든 컴퓨터 상의 체제
프로그래밍 언어 : 컴퓨터가 이해할 수 있는 언어(명령 전달을 위함)
고급언어 : 사람에게 친숙한 언어일수록 고급언어
------------------------------------------------------------------------------------------------------------------------
Compile 방식 : 실행시간 이전에 코드 전체를 기계언어로 변환 후 실행
Interpret 방식 : 실행시간에 줄 단위로 번역해서 실행함
python은 Interpret 방식
Managed Language : 메모리 관리를 언어상에서 알아서 해주는 언어(컴퓨터의 깊은 구조에 대한 이해없이 쉽게 접근할 수 있음)
Unmanaged Language : 하드웨어와 가까운 언어(CPU, Register 등에 접근가능, Memory를 직접 관리)
print("Hello World")
print(자료) : 자료를 화면에 출력
#ctrl + s / 저장
#ctrl + F5 / 실행
#ctrl + a / 전체지정
#ctrl + x / 뒤로
#ctrl + y / 앞으로
------------------------------------------------------------------------------------------------------------------------
정수형 : 소수점 없이 표현 가능한 수
실수 : 소수점으로 나타내야 하는 수, 나누어 떨어지지 않는 수
print(1)
print(-1)
print(10.12)
print(-19.12)
print(1+2j)
python에서 숫자는 0으로 시작할 수 없다. (진법표기에서만 가능)
print(0b10) 0b(binary) 2진수 표현
print(0o10) 0o(octal) 8진수 표현
print(0x10) 0x(hexadecimal) 16진수 표현
print(1e2) # aeb -> a곱하기 10의 b제곱
------------------------------------------------------------------------------------------------------------------------
문자열 자료형 : 작은 따옴표 사이 혹은 큰 따옴표 사이의 값
# "1"도 문자형이고 " "도 문자형이다
print('Mother's Birthday') -> 실행되지 않는다. 중간에 '가 문자 취급이 되어야 하는데 되지 않음.
이스케이프 문자 : 문자로 나타내기 제한되는 문자를 표현
역슬래시(\)+ 문자로 나타냄
이스케이프 문자는 무조건 문자열 안에서만 쓰이는 문자인 것 참고하기.
\t 탭 tab은 공백이 몇칸인가?는 잘못된 질문이다. tab은 절대적인 공간이 아니라 다음 마다로 이동하는 것을 의미한다. (8칸 기준)
\n 라인피드
\\ 역슬래시
\' 작은 따옴표
\" 큰 따옴표
print('Mother\'s Birthday')
print("Hello\tWorld")
print("\"\\('.')/\"")
print('"\\(\'.\')/"')
print("1\t2\t3\n4")
print("\\t")
------------------------------------------------------------------------------------------------------------------------
print 함수
print(자료1, 자료2, 자료3, ..., ) -> 자료들을 출력
print("1\t2\t3\n4")
print("\\t")
print(0,0,0,1,end=" ")
print(2, end="\t")
print(3.4)
prit("제 나이는", 36,"입니다.") #자동으로 띄어쓰기가 되는데 이건 sep때문이다.
print(0,0,0,1,end=" ",sep="\t")
a=10 정수형 자료형인 10을 a에 대입한다.
b=1.2 실수형 자료형인 1.2을 b에 대입한다.
c="Hello" 문자열 자료형인 "Hello"를 c에 대입한다.
d=1+2 1+2의 값을 d에 대입한다.
변수는 밖으로 나와야 출력이 된다.
------------------------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------------------------
print(이름)
print(나이)
print(각오)
print("제 이름은",이름,"입니다","제 나이는",나이,"입니다","제 각오는",각오,"입니다",sep=" ")
print("제 이름은", 이름)
print("나이", 나이, end="\t")
print(이름)
------------------------------------------------------------------------------------------------------------------------
연산자 (노트필기 참조)
type(자료) -> 자료의 자료형을 반환한다.
type(1) : 1은 정수형입니다라고 치환
type(1.2) : 1.2는 실수형입니다라고 치환
type(1-2j) : 1-2j는 복소수형입니다라고 치환
type("Hello") : 문자형입니다라고 치환
왼쪽 자료가 사라지고 그 자리에 오른쪽 자료가 남아
정수형 : int
문자열 : str
실수형 : float
복소수 : complex
비트-> 2진수 연산자
문자열 연산자는 +랑 *만 가능
#함수안에 함수가 있으면 안쪽부터 실행
print(type(1))
print(type(1.2))
print(type(1-2j))
print(type("Hello"))
a=10
b=3
print(a+b)
print(a-b)
print(a*b)
print(a/b)
print(a//b)
print(a%b)
print(a**b)
#프로그래밍 언어도 똑같이 곱셈과 나눗셈 먼저. 덧셈 먼저 하려면 괄호, 0으로 나눌 수 없다.
A=20
B=3
print("A는",A, "입니다")
print("B는",B,"입니다")
print() #칸 띄어줄 때 사용
print("A + B=",A+B)
print("A - B=",A-B)
print("A * B=",A*B)
print("A / B=",A/B)
print("A // B=",A//B)
print("A % B=",A%B)
print("A ** B=",A**B)
A="hello"
B="world"
print("A는",A, "입니다")
print("B는",B,"입니다")
print() #칸 띄어줄 때 사용
print("A + B=",A+B)
print("A - B=",A-B)
print("A * B=",A*B)
print("A / B=",A/B)
print("A // B=",A//B)
print("A % B=",A%B)
print("A ** B=",A**B)
#1. 문자열의 연산자 뭐가 살아남는
#2. python은 interpreter 언어!!
#3. 에러도 한번씩 읽어보세요
------------------------------------------------------------------------------------------------------------------------
연산자 %의 활용(한 달 동안의 내용)
1. 짝수, 홀수의 성질
%2
2, 약수, 배수의 성질
A가 B의 약수다 : B%A=0
A가 B의 배수다 : A%B=0
3. N개의 상황규정 : %N을 했을 때 나올 수 있는 경우는 0을 포함해서 총 N개다. (0+(N-1))
4. 1의 자리의 검출, 10의 자리의 검출
#세 자리 수에서 백의자리, 십의자리, 일의자리 각각 뽑아오는 일반식 세워주세요
a=825
print(a//100) #백의 자리 출력하는 공식
print(a%100//10) #십의 자리 출력하는 공식
print(a%10) #일의 자리 출력하는 공식
total_sec=6000
시=total_sec//3600
분=total_sec%3600//60
초=total_sec%60
input("입력:")
print(input("입력:"))
x=input("입력:")
x=input("입력:" )
print("x의 값은",x,"입니다.")
a=input("이름:")
b=input("나이:")
c=input("이메일:")
print("이름:",a)
print("나이:",b)
print("이메일:",c)
------------------------------------------------------------------------------------------------------------------------
a=int(input("첫 번째 수 입력:"))
b=int(input("두 번째 수 입력:"))
print("덧셈:",a+b)
print("뺄셈:",a-b)
print("곱셈:",a*b)
int(a) 를 했을 때 a자체를 바꾸는 표현이 아니라, a가 int가 됐을 때 어떻게 될까를 나타내는 것.
국어=int(input("국어점수 입력:"))
수학=int(input("수학점수 입력:"))
과학=int(input("과학점수 입력:"))
print("평균점수:",(국어+수학+과학)/3)
<사과:3000원, 배:2000원 사과와 배의 개수를 입력 받고, 총 금액을 출력하는 프로그램>
print("사과=3000원")
print("배=2000원")
apple=int(input("사과개수 입력:"))
pear=int(input("배개수 입력:"))
total_price=apple*3000+pear*2000
print("총 금액=",total_price,"원")
항상 보는 사람의 입장을 고려할 것.
-선생님 답안-
ap_pr = 3000
pe_pr = 2000
print("="*30)
print("사과", ap_pr, "원")
print("배",pe_pr,"원")
print("="*30)
ap = int(input("사과개수 입력 : "))
pe = int(input("배개수 입력 : "))
total = ap * ap_pr + pe * pe_pr
print(total)
------------------------------------------------------------------------------------------------------------------------
시=int(input("시간의 시를 입력하시오:"))
분=int(input("시간의 분을 입력하시오:"))
초=int(input("시간의 초를 입력하시오:"))
total_sec=시*3600+분*60+초
print("입력하신 시간은 총",total_sec,"초입니다")
print("="*50)
print("섭씨온도를 화씨온도로 변환해드립니다")
print("="*50)
섭씨=float(input("섭씨온도 입력:"))
화씨=섭씨*1.8000+32.00
print("화씨온도로",화씨,"도 입니다.")
print("="*50)
print("정다각형의 한 내각의 크기를 구해드립니다")
print("="*50)
a=int(input("몇 각형? :"))
b=180*(a-2)/a
print("한 내각의 크기는",b,"도 입니다")
print("="*50)
print("한라산...얼마나 더 높이 올라가야 할까?")
print("="*50)
height=int(input("현재 당신의 높이를 입력하세요(m) :"))
b=(1947-height)/1947*100
c=round(b,2)
print(c,"%만 더 올라가시면 됩니다!!")
a=int(input("세 자리 수를 입력하시오:"))
h=a//100
t=a%100//10
o=a%10
print("백의 자리:",h)
print("십의 자리:",t)
print("일의 자리:",o)
total_sec=int(input("초를 입력하시오:"))
hour=total_sec//3600
min_=total_sec%3600//60
sec=total_sec%60
print(hour,"시간",min_,"분",sec,"초")