연산자 우선순위 기초
Coddy GO 여정의 기초 섹션에 포함된 레슨 — 109개 중 27번째.
연산자 우선순위는 식에서 연산이 수행되는 순서를 결정합니다. 우선순위가 높은 연산은 우선순위가 낮은 연산보다 먼저 수행됩니다.
연산자 우선순위를 보여주는 프로그램을 작성하세요:
result1 := 5 + 3 * 2
result2 := (5 + 3) * 2
fmt.Println("5 + 3 * 2 =", result1)
fmt.Println("(5 + 3) * 2 =", result2)출력 결과:
5 + 3 * 2 = 11
(5 + 3) * 2 = 16첫 번째 식에서 곱셈(*)은 덧셈(+)보다 우선순위가 높으므로 3 * 2가 먼저 계산됩니다. 두 번째 식에서는 괄호가 기본 우선순위보다 우선하므로 5 + 3이 먼저 계산되도록 합니다.
챌린지
초급이 챌린지에서는 Go의 연산자 우선순위를 이해하는 연습을 하게 됩니다. 서로 다른 값을 가진 여러 변수가 있으며, 예상되는 출력을 얻기 위해 result 변수의 식을 수정해야 합니다.
현재 식의 괄호 위치가 올바르지 않습니다. 여러분의 과제는 식이 true로 평가되도록 적절한 위치에 괄호를 추가하는 것입니다.
치트 시트
연산자 우선순위는 식에서 연산이 수행되는 순서를 결정합니다. 우선순위가 높은 연산이 우선순위가 낮은 연산보다 먼저 수행됩니다.
곱셈(*)은 덧셈(+)보다 우선순위가 높습니다:
result1 := 5 + 3 * 2 // 11과 같음 (3 * 2가 먼저, 그 다음 + 5)
result2 := (5 + 3) * 2 // 16과 같음 (5 + 3이 먼저, 그 다음 * 2)괄호를 사용하여 기본 우선순위를 무시하고 연산 순서를 제어하십시오.
직접 해보기
package main
import "fmt"
func main() {
// 이 변수들은 이미 설정되어 있습니다
a := true
b := false
c := true
// TODO: 아래의 식이 true가 되도록 괄호를 추가하세요
// HINT: 식의 결과가 true가 되어야 합니다
result := a && b || c
// 아래 줄을 수정하지 마세요
fmt.Println(result)
}
이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.
기초의 모든 레슨
2변수와 기본 자료형
변수란 무엇인가`:=`를 이용한 타입 추론정수 (int)부동 소수점 수불리언 (Booleans)문자열 (Strings)제로 값 (Zero Values)상수명명 규칙요약 - 변수와 타입