Operatori > Operatori di programmazione > Esempio: utilizzo dell'operatore di programmazione TRY/ON ERROR
  
Esempio: utilizzo dell'operatore di programmazione TRY/ON ERROR
Utilizzare gli operatori di programmazione try-on-error, break, continue e return per gestire le condizioni di errore.
1. Nel gruppo Risultati della scheda Formattazione matematica fare clic su Mostra zeri finali.
2. Impostare una matrice 6x6, quindi utilizzare la funzione matrix per impostare i relativi elementi su un valore noto.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
3. Scrivere un programma per impostare un intervallo di elementi su un valore definito da una funzione nell'intervallo specificato.
Fare clic per copiare questa espressione
Il programma non riesce perché, quando x=0 e y=0, viene effettuato un tentativo di dividere (x+y) per zero.
4. Modificare il programma in modo che l'elemento (0,0) della nuova matrice assuma il valore dell'elemento corrispondente della matrice Z anziché il valore della divisione per zero.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Il programma assicura che l'elemento (0,0) non venga impostato sul valore della divisione per zero.
5. Utilizzare gli operatori try e break per intercettare la condizione di errore e consentire l'esecuzione del programma. La condizione di errore, ovvero la divisione per zero, è rappresentata dalla stringa "DBZ".
Fare clic per copiare questa espressione
Il blocco on error viene eseguito solo se il test TRY restituisce un errore.
Fare clic per copiare questa espressione
Mathcad esegue il programma come indicato di seguito.
a. Il primo ciclo inizia con x=0 e y=0.
b. L'operatore try verifica se l'espressione contiene errori e ottiene un errore di divisione per zero. Questo errore indica al programma di eseguire il blocco on error.
c. Il blocco on error esegue la sua prima istruzione e imposta l'elemento (0,0) su "DBZ", quindi l'operatore break interrompe l'esecuzione del ciclo (x=0, y=0..5) corrente. Di conseguenza, i restanti elementi row=0 rimangono invariati.
d. Il programma passa al ciclo di x successivo, (x=1, y=0..5), e, in assenza di altri errori, scrive gli elementi row=1.
e. Il programma continua con l'esecuzione dei cicli rimanenti fino a coprire gli intervalli specificati.
6. Sostituire l'operatore break con l'operatore continue e osservare il diverso output.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
A differenza dell'operatore break, l'operatore continue continua con l'iterazione successiva del ciclo corrente e i restanti elementi di row=0 e gli elementi della matrice rimanenti vengono impostati su (x+y)/(10x-y), come in precedenza.
7. Sostituire l'operatore continue con l'operatore return e osservare le differenze nell'output.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
A differenza dell'operatore continue, che continua l'esecuzione del ciclo corrente, l'operatore return interrompe il programma e restituisce Y3 con l'elemento (0, 0) impostato su "DBZ".