English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Le decisioni nel programming sono simili a quelle nella vita reale. Nelle decisioni, viene eseguito un segmento di codice quando vengono soddisfatte determinate condizioni. A volte, queste sono anche chiamate istruzioni di flusso di controllo.GolangUsa le istruzioni specificate per determinare il flusso di esecuzione del programma in base a determinate condizioni. Queste vengono utilizzate per far avanzare e biforcchiare il flusso di esecuzione in base alle modifiche dello stato del programma.
Le istruzioni di decisione nel Go programming sono:
Questo è il tipo di decisione più semplice. Viene utilizzato per determinare se eseguire una certa istruzione o un blocco di istruzioni, ossia, se una certa condizione èVeritàallora esegui il blocco di istruzioni, altrimenti non esegui.
Sintassi:
if(condition) { // Esegui le istruzioni sebbene // La condizione condition è vera }
Diagramma di flusso:
Esempio:
//usare l'istruzione if package main import "fmt" func main() { // Prende la variabile locale var v int = 700 //usare l'istruzione if // Verifica la condizione if v < 1000 { // Stampa il seguente contenuto, se la condizione viene valutata come true fmt.Printf("v è minore di 1000\n") } fmt.Printf("Il valore di v è: %d\n", v) }
Output:
v è minore di 1000 Il valore di v è: 700
La if ci dice che se la condizione è true, esegue il blocco di istruzioni, se la condizione è false, non esegue nulla. Ma cosa succede se vogliamo fare qualcosa se la condizione è false? In quel caso, usiamo la parola chiave else. Quando la condizione è false, possiamo usare else insieme a if per eseguire un blocco di codice.
Sintassi:
if (condition) { // Se la condizione if è true, esegui questo blocco di codice } // Se la condizione if è false, esegui questo blocco di codice }
Diagramma di flusso:
// Utilizza if...else package main import "fmt" func main() { // Variabile locale var v int = 1200 // Utilizza una if per verificare la condizione if v < 1000 { // Stampa il seguente contenuto, se la condizione viene valutata come true fmt.Printf("v < 1000\n") } // Stampa il seguente contenuto, se la condizione viene valutata come false fmt.Printf("v > 1000\n") } }
Output:
v > 1000
In linguaggio Go, una if annidata è una if che è il target di un altro if o else. Una if annidata è una if all'interno di un'altra if. Sì, Golang ci permette di annidare if all'interno di altre if. Possiamo mettere una if all'interno di un'altra if.
Sintassi:
if(condition1) { //eseguire se la condizione 1 è true if(condition2) { //eseguire se la condizione 2 è true } }
Diagramma di flusso:
//usare if嵌套if package main import "fmt" func main() { //due variabili locali var v1 int = 400 var v2 int = 700 //usare l'istruzione if if( v1 == 400 ) { //eseguire se la condizione if è true if( v2 == 700 ) //eseguire stampa di output se la condizione if è true fmt.Printf("il valore di v1 è 400, il valore di v2 è 700\n"); } } }
Output:
Il valore di v1 è 400, il valore di v2 è 700
Qui, l'utente può scegliere tra più opzioni. Le istruzioni if vengono eseguite dall'alto in basso. Una volta che una condizione di if diventa true, viene eseguita la frase associata a if e saltate le altre istruzioni if. Se nessuna condizione è soddisfatta, viene eseguita l'istruzione else finale.
Cose importanti:
Le istruzioni if possono avere 0 o 1 if e devono essere seguite da altri if
Le istruzioni if possono avere 0 a più if e devono essere precedute da else
Se else if è successo, altri else if o else non verranno eseguiti
Sintassi:
if(condition_1) { //eseguire questo blocco di codice se condition_1 è true } //eseguire questo blocco di codice se condition_2 è true } //eseguire questo blocco di codice se nessuna condizione è true }
Diagramma di flusso:
package main import "fmt" func main() { var v1 int = 700 if(v1 == 100) { //se la condizione è vera, visualizzare il seguente contenuto fmt.Printf("il valore di v1 è 100\n") } fmt.Printf("il valore di v1 è 200\n") } fmt.Printf("il valore di v1 è 300\n") } //se nessuna condizione è vera fmt.Printf("nessun valore corrispondente\n") } }
Output:
Nessun valore corrispondente