Codifica nel linguaggio C++ – Utilizzo del costrutto Switch

Creazione di una calcolatrice che consenta le operazioni di somma, differenza, prodotto, divisione e resto.
Nell’esempio è proposto anche un primo approccio alle funzioni definite dall’utente.

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
#include <iostream>
#include <iomanip>
using namespace std;
 
float Numero1, Numero2;
 
void Input_Numeri()
{
cout << "Inserisci il primo numero: ";
cin >> Numero1;
cout << "Inserisci il secondo numero: ";
cin >> Numero2;
 
}
 
int main()
{
float Risultato;
char Tipo;
 
cout << "Inserisci l'operazione desiderata: ";
cin >> Tipo;
switch (Tipo)
{
case 's':
case 'S':
cout << endl << "    **** Operazione Selezionata: SOMMA ****    " << endl << endl;
Input_Numeri();
Risultato = Numero1 + Numero2;
break;
case 'd':
case 'D':
cout << endl << "    **** Operazione Selezionata: DIFFERENZA ****    " << endl << endl;
Input_Numeri();
Risultato = Numero1 - Numero2;
break;
case 'p':
case 'P':
cout << endl << "    **** Operazione Selezionata: PRODOTTO ****    " << endl << endl;
Input_Numeri();
Risultato = Numero1 + Numero2;
break;
case 'q':
case 'Q':
cout << endl << "    **** Operazione Selezionata: QUOZIENTE ****    " << endl << endl;
Input_Numeri();
if (Numero2 == 0)
{
cout << endl << endl << "    **** ERRORE: Stai dividendo per zero ****    " << endl << endl;
system ("PAUSE");
return 0;
}
Risultato = Numero1 / Numero2;
break;
case 'r':
case 'R':
cout << endl << "    **** Operazione Selezionata: RESTO ****    " << endl << endl;
Input_Numeri();
if (Numero2 == 0)
{
cout << endl << endl << "    **** ERRORE: Stai dividendo per zero ****    " << endl << endl;
system ("PAUSE");
return 0;
}
Risultato = (int)Numero1 % (int)Numero2;
break;
default:
cout << endl << "    **** Valore immesso non valido ****    " << endl << endl;
system ("PAUSE");
return 0;
}
 
cout << endl << "    Il risultato e': " << fixed << setprecision(2) << Risultato << endl << endl << endl;
 
system ("PAUSE");
 
return 0;
}

Visite: 2027