Sintassi switch MATLAB
Switch Expression
caso
caso
Altrimenti
FINE
MATLAB Switch Descrizione ed esempi
L'istruzione switch condizionale controlla l'esecuzione del programma saltando su un caso da un elenco di opzioni del caso. Il controllo di questo salto è definito da una variabile contenuta nell'argomento switch e da una costante predefinita in ciascun caso. Se questa costante non è predefinita in nessun caso, l'istruzione Switch passa all'opzione "altrimenti". Una volta eseguiti gli argomenti nel caso, viene rilasciato l'interruttore condizionale e il programma continua la sua esecuzione da "End". Questo interruttore condizionale non accetta operatori relazionali durante l'analisi delle variabili.
Come utilizzare l'interruttore condizionale per controllare il flusso del programma in MATLAB.
In questo semplice esempio, creiamo un'applicazione console e inseriamo un valore tramite prompt () per indirizzare il flusso del programma sul numero del caso che abbiamo selezionato.
In tutti i casi di cambiamento condizionale, viene chiamata la funzione Disp (), che visualizza il messaggio "Hai scelto il caso"Nella console di comando, seguito dal numero del caso che abbiamo selezionato e ti ha mostrato il risultato di una semplice funzione MATLAB. Se il valore immesso nella variabile "A" tramite la console non corrisponde a una costante precedentemente specificata nei casi, lo switch inoltra il salto all'opzione "altrimenti", dove visualizza il seguente messaggio: "A" fuori scala, "a" è: seguito dal suo valore. L'obiettivo di questo esempio è comprendere meglio il cambiamento condizionale. A tal fine, imposteremo i punti di interruzione sulla prima riga di ogni caso, che fermerà l'esecuzione del programma e ci consentirà di vedere in tempo reale in cui l'esecuzione del programma viene diretta.
I punti di interruzione sono uno strumento altamente raccomandato nell'attività di programmazione per eseguire il debug di questo tipo di condizionali.
Crea uno script e incolla il seguente codice. Per uscire dall'applicazione, premere Ctrl+C.
mentre 1
prompt = 'Immettere un valore e premere Invio ...';
a = input (prompt);
Switch a
caso 1
disp (['hai scelto il caso', num2str (a), 'piccola piazza magica per te']);
tu = magia (3)
Caso 2
disp (['hai scelto il caso', num2str (a), 'un array di zeri per te']);
tu = zeri (5)
Caso 3
disp (['hai scelto il caso', num2str (a), 'un array di quelli per te']);
tu = quelli (5)
Caso 4
disp (['hai scelto il caso', num2str (a), 'una piazza magica per te']);
tu = magia (7)
Altrimenti
disp (['"a" fuori scala, "a" è:', num2str (a)])
FINE
FINE
Eseguire lo script e dalla console di comando, immettere valori diversi in "a" per dirigere il flusso del programma verso i diversi casi
Come utilizzare l'interruttore condizionale per creare un convertitore di misura in Matlab
Nel seguente esempio, faremo un'applicazione console in MATLAB dove useremo l'interruttore condizionale per convertire le unità di misurazione. Questa applicazione visualizzerà un elenco di elementi con opzioni di conversione.
Utilizzando la funzione prompt (), inseriamo il numero dell'elemento selezionato, che è memorizzato nella variabile "elemento" e il valore che vogliamo convertire, che è memorizzato nella variabile "valore".
L'elemento variabile sarà l'argomento dell'interruttore condizionale che indirizzerà il programma al caso che corrisponde al numero dell'elemento o all'unità di conversione selezionata dall'utente.
Switch Elem
caso 1
CM a pollice
Caso 2
Da pollici a centimetri
Caso 3
Km a MI
Caso 4
Mi a km
Altrimenti
Articolo non riconosciuto
FINE
In ogni caso, l'operazione matematica per eseguire la conversione verrà applicata al valore memorizzato in "Valore". Creeremo una stringa con un messaggio all'utente che mostrerà il risultato dopo il rilascio del programma dallo switch condizionale. Utilizzeremo anche l'opzione "altrimenti" per informare l'utente in caso di selezione di un elemento che non è riconosciuto.
Crea uno script, incolla questo codice e premi Esegui. Per uscire dall'applicazione, premere Ctrl+C.
mentre 1
Clc ();
Disp 'Unit Converter in Matlab. Uscita Premere Ctrl+C.'
disp 'cm to polly [1]';
disp 'pollici a cm [2]';
disp 'km a mi [3]';
disp 'mi a km [4]';
prompt = 'Seleziona unità di conversione';
item = input (prompt);
prompt = 'immettere il valore per la conversione';
value = input (prompt);
Switch Elem
caso 1
x = valore.* 0.3937;
out = ([num2str (valore), 'cm sono equivalenti a', num2str (x), 'polly']);
Caso 2
x = valore.* 2.54;
out = ([num2str (valore), 'pollici sono equivalenti a', num2str (x), 'cm.']);
Caso 3
x = valore.* 0.6214;
out = ([num2str (valore), 'km sono equivalenti a', num2str (x), 'mi']);
Caso 4
x = valore.* 1.6093;
out = ([num2str (valore), 'mi sono equivalenti a', num2str (x), 'km']);
Altrimenti
Disp 'L'elemento di conversione non è riconosciuto'
FINE
disp (out);
prompt = 'premi Invio per continuare ...';
input (prompt);
FINE
Una volta selezionato il tipo e il valore di conversione, l'applicazione visualizza il risultato nell'unità di misurazione che abbiamo scelto.
Come utilizzare l'interruttore condizionale per ottenere il processo corretto in un'operazione di radice quadrata.
Per il calcolo della radice quadrata, MATLAB ha tre diverse funzioni, l'uso errato di queste può causare risultati inaccurati o messaggi di errore imprevisti.
Per evitare questo, è necessario eseguire l'operazione con la funzione corretta, a seconda del tipo di dati la cui radice quadrata è determinata. In questo esempio, creeremo una semplice applicazione della console utilizzando l'interruttore condizionale eseguendo l'operazione di radice quadrata con la funzione più appropriata a seconda del tipo e del segno.
Lo scalare “A” sarà la variabile da cui vogliamo ottenere la radice quadrata e inseriremo il suo valore e il suo segno usando la funzione prompt (). Per ottenere il segno del valore in "A", useremo la funzione Sign (), che restituirà un 1 in "S" se il valore di "A" è positivo, 0 se il valore è 0 e -1 Se è negativo. La variabile "s" viene inviata all'interruttore condizionale
Crea uno script e incolla il seguente codice. Per uscire dall'applicazione, premere Ctrl+C.
mentre 1
prompt = 'Immettere un valore del segno positivo o negativo e premere Invio ...';
a = input (prompt);
s = segno (a);
switch s
Caso 0
disp ('lo scalare "a" è 0 e non ha una radice quadrata')
caso 1
r = realsqrt (a)
Disp (['The Scalar "A" ha un segno positivo. La sua radice quadrata è: ', num2str (r)])
caso 1
r = sqrt (a)
Disp (['The Scalar "A" ha un segno negativo. La sua radice quadrata è: ', num2str (r)])
FINE
FINE
Esegui lo script e inserisci vari valori dei segni positivi e negativi nella console di comando per ottenere i risultati.
In questo modo, l'interruttore condizionale ha diretto l'operazione di radice quadrata alla funzione corretta a seconda del segno del valore di "A".
Conclusione:
In questo articolo, è stato spiegato l'uso dell'interruttore della funzione di salto condizionale in MATLAB e sono stati forniti alcuni esempi pratici per dimostrare l'uso di questa funzione. I tipi di argomentazioni supportati da questa funzione condizionale e i tipi di dati accettati sono stati spiegati anche in dettaglio. Speriamo che tu abbia trovato utile questo articolo di Matlab. Vedi altri articoli di suggerimento Linux per ulteriori suggerimenti e informazioni.