domenica 16 settembre 2012

Uso dell'istruzione Switch

E' possibile utilizzare l'istruzione switch per creare ramificazioni multiple nel codice. Viene mostrata una generica forma dell'istruzione:
switch(scelta)
{
case valore1: istruzione1; break;
case valore2: istruzione2; break;
case valore3: istruzione3; break;
case valoreN: istruzioneN; break;
default: istruzioneDefault;
}
L'istruzione verifica che il valore di scelta con tutti i possibili valori (1,2,3, N) in ordine. Se scelta non equivale a nessun valore, viene eseguita l'istruzione di default; altrimenti se equivale a uno dei valori nella lista, il programma esegue le istruzioni corrispondenti. Il programma abbandona l'istruzione switch non appena esegue l'istruzione break. L'uso di break o default sono opzionali, ma in questo modo il programma continuerà a controllare i successivi rami dell'istruzione switch sino al termine. Solitamente break viene utilizzato alla fine di ogni ramo case. E anche se default non è obbligatorio, ci permette di tenere sotto controllo tutti i valori possibili di scelta.
Qui viene dato un esempio che mostra l'idea. Supponiamo che scelta equivalga a valore2. Il programma verifica che il valore di scelta equivalga a valore1, non è così, quindi prosegue sull'istruzione. Di seguito verifica che scelta equivale a valore2, sono identici, per cui viene eseguita istruzione2, sino a che il programma non trova il break, ed esce dalla struttura dello switch.

Presentare il programma Menu Scelta

Il programma Menu scelta presenta all'utente una lista di tre livelli di difficoltà del programma e gli chiede di effettuare una scelta. Se l'utente inserisce il numero corrispondente ad una delle scelte in lista, viene visualizzato un messaggio di conferma. Se l'utente effettua qualche altra scelta, viene comunicato che si tratta di un valore non valido.
Il codice del semplice programma:
//Menu Scelta
//Dimostrazione istruzione switch
#include<iostream>
using namespace std;
int main()
{
int iScelta=0;
cout << “Livelli difficolta'\n\n”;
cout << “1 – Facile\n 2 – Normale\n 3 – Difficile\n”;
cout << “Scegli: ”; cin >> iScelta;
switch (iScelta){
case 1: cout << “Hai scelto Facile.\n”;
case 2: cout << “Hai scelto Normale.\n”;
case 3: cout << “Hai scelto Difficile.\n”;
default: cout << “Scelta non valida.\n”;
}
system(“PAUSE”);
return EXIT_SUCCESS;
}

Nessun commento:

Posta un commento