Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Ланцюжок Умов | Керуючі Структури
Practice
Projects
Quizzes & Challenges
Вікторини
Challenges
/
Вступ до Golang

bookЛанцюжок Умов

Свайпніть щоб показати меню

Можна використовувати ключове слово else if для визначення додаткової умови, яка буде перевірена у випадку, якщо попередня умова не виконується:

index.go

index.go

copy
12345678910
package main import "fmt" func main() { if (3 > 4) { fmt.Println("3 is greater than 4") } else if (3 > 2) { fmt.Println("3 is greater than 2") } }

У наведеній вище програмі спочатку перевіряється вираз 3 > 4, який дорівнює false, тому програма переходить до наступної інструкції (3 > 2), визначеної за допомогою ключового слова else if. Наступна умова є true, тому у виводі відображається результат другої інструкції Println.

Можна додати стільки додаткових умов, скільки потрібно, використовуючи оператори else if:

index.go

index.go

copy
1234567891011121314
package main import "fmt" func main() { if (3 > 4) { fmt.Println("3 is greater than 4") } else if (3 > 3) { fmt.Println("3 is greater than 3") } else if (3 > 2) { fmt.Println("3 is greater than 2") } else if (3 > 1) { fmt.Println("3 is greater than 1") } }

Варто зазначити, що наведена вище програма виводить лише 3 is greater than 2, навіть якщо наступна умова також є true. Це демонструє, що ланцюжок if-else if припиняє перевірку умов, щойно знаходить першу true умову.

Цей процес називається умовним ланцюжком, оскільки ми фактично визначаємо умови у вигляді ланцюга за допомогою ключових слів if-else if.

Примітка

У ланцюжку умов виконується лише один блок коду — той, який задовольняє умову, а решта пропускаються.

Альтернативно, замість ланцюжка умов за допомогою комбінації if-else if, можна записати кожну умову окремим оператором if. Проте цей підхід дає інший результат, оскільки це вже не єдиний ланцюжок, а набір окремих умов, і тому виконання не припиняється, якщо одна чи кілька умов виконуються:

index.go

index.go

copy
1234567891011121314151617
package main import "fmt" func main() { if (3 > 4) { fmt.Println("3 is greater than 4") } if (3 > 3) { fmt.Println("3 is greater than 3") } if (3 > 2) { fmt.Println("3 is greater than 2") } if (3 > 1) { fmt.Println("3 is greater than 1") } }

До цього моменту, для спрощення, ми використовували значення у булевих виразах. Однак на практиці частіше використовують змінні або комбінацію змінних і значень у булевих виразах:

index.go

index.go

copy
123456789
package main import "fmt" func main() { var value int = 10 if (value == 10) { fmt.Println("The variable has the expected value.") } }

У ланцюжку умов можна використовувати ключове слово else для позначення блоку коду, який виконується, якщо жодна з умов у ланцюжку не виконана:

index.go

index.go

copy
12345678910111213
package main import "fmt" func main() { var value int = 70 if (value < 50) { fmt.Println("The value is less than 50") } else if (value == 50) { fmt.Println("The value is equal to 50") } else { fmt.Println("The value is greater than 50") } }
question mark

Які з рядків буде включено у вивід?

Select all correct answers

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 3. Розділ 3

Запитати АІ

expand

Запитати АІ

ChatGPT

Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат

Секція 3. Розділ 3
some-alt