처음부터 시작 - 부울 논리 적용
12313 단어 gotutorialbeginnersprogramming
This article will cover working with boolean logic. You will learn how to work with boolean data,
if
,else if
andelse
constructs.
프로그램에서 부울 논리를 사용하는 것은 코드를 통해 다른 실행 경로를 만드는 것입니까?
What does that mean?
즉, 어떤 데이터를 입력하느냐에 따라 프로그램이 실행될 수 있는 방법이 한 가지 이상이라는 의미입니다.
Ok, can you show me?
물론 다음 코드를 고려하십시오.
printMessage := true
if printMessage {
fmt.Println("Message")
}
만약
printMessage
true
입니다. , 문자열 "Message"가 인쇄됩니다. 값이 false
, 아무것도 인쇄되지 않습니다.Ok, I think I get it.
시리즈
if 구조
값에 따라 실행되거나 실행되지 않는 코드에 대한 예를 이미 보았습니다.
if
그것을 가능하게 하는 것이 바로 구조입니다. 안 if
다음과 같은 부울 표현식을 사용하십시오.if true {
// statements here will always run
}
부울 변수 사용
부울 식의 일부로 부울 값을 사용하는 경우 이를 평가해야 합니다. 다음은 이를 보여주는 코드입니다.
accountBalance = 100
accountCredit = 200
if accountBalance + accountCredit > 0 {
fmt.Println("You have money to spend")
}
위의 프로그램은 작업을 수행합니다. 즉, 지출할 돈이 있는지 여부를 올바르게 평가합니다. 그러나
else
가 있기 때문에 조건이 충족되지 않으면 무언가를 인쇄하고 싶을 수 있습니다. .다른 소개
이전 코드를 개선하고 싶습니다.
else
절은 if
일 때 실행됩니다. 거짓으로 평가됩니다. 프로그램에 추가하는 방법은 다음과 같습니다.accountBalance = 100
accountCredit = 200
if accountBalance + accountCredit > 0 {
fmt.Println("You have money to spend")
} else {
fmt.Println("No money left, please add more funds")
}
다른 경우 사용
if
및 else
당신을 멀리 데려다줍니다. 때로는 충분하지 않습니다. 시험에서 획득한 점수에 따라 다른 수준의 과정을 채점해야 할 수도 있습니다. 이 상황에서는 else if
if
구문은 false
로 평가됩니다. . else
와 다릅니다. 그것은 또한 표현식을 취한다는 점에서. 다음은 사용되는 예입니다.if testScore >= testScoreGrade5 {
fmt.Println("Top mark")
} else if testScore >= testScoreGrade4 {
fmt.Println("Pass with distinction")
} else if testScore >= testScoreGrade3 {
fmt.Println("Pass with distinction")
} else {
fmt.Println("Failed")
}
여러 표현식
식은 둘 이상의 변수 또는 조건을 검사할 수 있습니다. 도움이 되는 부울 연산자가 있습니다. 다음은 발생할 가능성이 있는 몇 가지 연산자입니다.
&&
, 왼쪽과 오른쪽의 값이 모두 참이면 참으로 평가됩니다. 다음은 사용 중인 이 연산자의 예입니다.hasGas := true
hasKeyInIgnition := true
if hasGas && hasKeyInIgnition {
fmt.Println("Can drive car")
}
앞의 코드에서 표현식은
hasGas
및 hasKeyInIgnition
사실이다.||
, 왼쪽 또는 오른쪽 값이 참이면 참으로 평가됩니다. 다음은 사용 중인 이 연산자의 예입니다. hasBurger := true
hasSandwich := false
if hasBurger || hasSandwich {
fmt.Println("Can eat")
}
이전 코드에서
hasBurger
이 표현이 참이 되기에 충분합니다.!
, NOT이라고도 하며 표현식을 부정합니다. 예를 들면 다음과 같습니다. hasSandwich := false
if !hasSandwich {
mt.Println("No sandwiches, then I will starve, I only eat sandwiches")
}
위 식은
!
의 부정 덕분에 true로 평가됩니다. .연습 - 부울 논리를 테스트하는 프로그램 만들기
package main
import "fmt"
func main() {
testScoreGrade5 := 80
testScoreGrade4 := 60
testScoreGrade3 := 50
testScore := 49
hasGas := true
hasKeyInIgnition := true
hasBurger := true
hasSandwich := false
printMessage := true
if printMessage {
fmt.Println("Message")
}
if testScore >= testScoreGrade5 {
fmt.Println("Top mark")
} else if testScore >= testScoreGrade4 {
fmt.Println("Pass with distinction")
} else if testScore >= testScoreGrade3 {
fmt.Println("Pass with distinction")
} else {
fmt.Println("Failed")
}
if hasGas && hasKeyInIgnition {
fmt.Println("Can drive car")
}
if hasBurger || hasSandwich {
fmt.Println("Can eat")
}
if !hasSandwich {
fmt.Println("No sandwiches, then I will starve, I only eat sandwiches")
}
}
go run main.go
, 프로그램을 실행하려면 go run main.go
다음 출력이 표시되어야 합니다.
Message
Failed
Can drive car
Can eat
No sandwiches, then I will starve, I only eat sandwiches
testScore
를 변경하면 출력이 어떻게 변경됩니까? 값을 51, 62 03 90? 요약
이 기사에서는
if
, else if
및 else
부울 표현식의 사용. 데이터 값에 따라 코드가 다르게 실행됩니다.
Reference
이 문제에 관하여(처음부터 시작 - 부울 논리 적용), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/azure/go-from-the-beginning-applying-boolean-logic-3gog텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)