본문 바로가기
  • Top Genius in the world
알고리듬

[알고리듬] #1 사칙연산

by Mr.Algo 2024. 3. 16.
728x90
반응형

[key word] 연산자, 우선순위, 몫, 나머지, 거대정수

파이썬 실습창을 열 수 있습니다.실습창 열기

 

환영합니다!

코딩?

그냥 하면 됩니다.

바로 시작합시다.

1. 사칙연산

우리 블로그의 '파이썬 실습 창'을 항상 열어두고 사용하면 편리합니다.

(쥬피터랩 등 다른 IDE를 사용하여도 됩니다.)

 

코딩은 자전거 타기와 같습니다.

무조건 모두 실습하세요. 보기만 하고 안다고 착각하면 안됩니다.

 

1-1. 덧셈

열어 둔 실습 창에 아래와 같이 print(5+3)을 입력합니다.

첫째 칸부터, 소문자로 입력하여야 합니다.

입력을 하고  실행 버튼(삼각형 모양)을 누르세요.

8이 출력되면 성공!

 

축하합니다. 파이썬으로 프로그램을 작성하였습니다.

다시 작성하려면 실행 버튼 왼쪽의 편집 버튼(연필 모양)을 누르세요.

 

영타가 익숙하지 않은 분은 print를 1초에 2번 이상 칠 수 있을 때까지 연습하세요.

print 입력 연습은 위의 편집창에서 하면 됩니다.

 

※ 전문가는 마우스 보다 손가락을 많이 사용합니다.

손가락으로 실행하려면 콘트롤 키를 누르고 있으면서 엔터키를 누릅니다.

다시 작성하려면 스페이스 키를 누릅니다(권장).

 

1-2. 사칙연산

다음을 실습하세요.

print(5+3)
print(5-3)
print(5*3)
print(5/3)

결과가 다음과 같습니까?

8
2
15
1.66666666667

 

축하합니다.

곱셈은 *(별표, asterisk), 나눗셈은 /(빗금, slash)를 사용합니다.

 

1-3. 사칙연산 확장

다음을 실습하세요.

print(19//5)
print(19%5)
print(2**3)

결과가 다음과 같습니까?

3
4
8

축하합니다.

몫은 //(double slash), 나머지는 %(percent), 거듭제곱은 **(double asterisk)를 사용합니다.

 

1-4. 사칙연산 정리

연산자 이름을 영어로 말할 수 있도록 외우자.

  연산 연산자 연산자 이름 설명
1 더하기 + plus (플러스)  
2 빼기 - minus (마이너스)  
3 곱하기 * asterisk (애스트리스크, 별표) 생략할 수 없음
4 나누기 / slash (슬래쉬, 빗금) 실수(소숫점이 있는 수)
5 // double slash (다블 슬래쉬) 정수(소숫점이 없는 수)
6 나머지 % percent (퍼센트)  
7 제곱 ** double asterisk (다블 애스트리스크)  

 

2. 연산자 우선 순위

연산자(operator)는 우선순위(rules of precedence:계산 순서)가 약속되어 있다.

괄호가 있으면 먼저 계산하고, 연산자는 우선순위에 따라 연산한다.

우선순위가 같으면 왼쪽 항부터 연산한다. , 지수연산은 오른쪽부터 연산한다.

연산자 앞과 뒤에 공백(space)을 넣지 않아도 된다.

우선순위(precedence) 연산자(operator) 설명(description)
1 (  ) 괄호는 소괄호만 사용한다.
2 ** 제곱
3 *, /, //, % 곱하기, 나누기, 몫, 나머지
4 +. - 더하기, 빼기

 

다음 연산식의 실행결과를 예측하고 확인하자.

결과는 ‘0.0’이다. 코딩하여 확인하자.

print( 1 - 2 ** 3 * 4 // (( 5 + 6) % 7) / 8)

 

연산 순서는 다음과 같다.

 

다음 수식을 위와 같이 그림을 그려서 정확히 예측하여 보자.

print(8 * 7 // (6 2) % 5 / 4 + 3 ** 2 - 1)

 

실행결과는 9.0 이다. 예측값하고 같은가?

 

확인 학습

  거대 정수(huge number)

1234를 5678 제곱하여 보자.

컴퓨터에 따라 너무 큰 숫자여서 에러가 발생하면 1234를 567제곱하여 보자.

 

결과가 3072 ~ 6096 인 거대 정수를 만나게 된다.

 

● 위에서 만난 거대 정수를 3333으로 나눈 나머지를 구할 수 있겠습니까?

더보기

답은 58이다.

1234**567인 경우는 3241이다.

 

다음과 같이 코딩하여 확인할 수 있다.

print(1234**5678%3333)

코딩을 잘하는 사람은 4번 복습합니다.

코딩을 정말 잘하는 사람은 10번 복습합니다.

가끔 한 번 공부하고 다 안다고 생각하는 사람도 있습니다.

 

■ 조금 더 깊이?

내용을 크게 보려면 내용 위에서 클릭하세요.

오늘 공부 끝.

수고하셨습니다.

728x90
반응형