Implementare un software che permetta di svolgere calcoli matematici con due numeri interi. Più nel dettaglio il software deve permettere di effettuare le operazioni di addizione, sottrazione, moltiplicazione e divisione.
Analisi del problema
E’ possibile realizzare questo software utilizzando la metodologia top-down che prevede la scomposizione di un problema in tanti piccoli sottoproblemi. Questa metodologia consente di facilitare la risoluzione del problema principale. Possiamo schematizzare quanto detto nel seguente modo:

Ad ogni sottoproblema deve corrispondere un sottoprogramma che in C++ implementiamo col concetto di funzione. Prevediamo quattro funzioni come schematizzato:
- int addizione (int n1, int n2) : prende in input due valori e calcola la somma di tipo intero
- int sottrazione (int n1, int n2) : prende in input due valori e calcola la differenza di tipo intero
- int moltiplicazione (int n1, int n2) : prende in input due valori e calcola il prodotto di tipo intero
- float divisione (int n1, int n2) : prende in input due valori e calcola il quoziente di tipo reale
- void menu()
menu()
Questa funzione permette di stampare il menu.

Per visualizzare il menu dobbiamo utilizzare una serie di stampe:
Programma
#include <iostream> int addizione(int a, int b); int sottrazione(int a, int b); int moltiplicazione(int a, int b); float divisione(int a, int b); void menu(); using namespace std; int main(int argc, char** argv) { cout<<"*************************************"<<endl; cout<<"*PROGRAMMA CALCOLATRICE CON FUNZIONI*"<<endl; cout<<"*************************************"<<endl; cout<<"Dammi due numeri:"<<endl; int n1, n2; cin>>n1; cin>>n2; menu(); char input; cin>>input; do { switch(input) { case '1': { int r = addizione(n1,n2); cout<<"Il risultato e' "<<r<<endl; break; } case '2':{ int r =sottrazione(n1,n2); cout<<"Il risultato e' "<<r<<endl; break; } case '3': { int r =moltiplicazione(n1,n2); cout<<"Il risultato e' "<<r<<endl; break; } case '4': { int r = divisione(n1,n2); cout<<"Il risultato e' "<<r<<endl; break; } } }while(input=='q'); return 0; } void menu() { cout<<"Digita l'operazione da compiere:"<<endl; cout<<"1 - Addizione"<<endl; cout<<"2 - Sottrazione"<<endl; cout<<"3 - Moltiplicazione"<<endl; cout<<"4 - Divisione"<<endl; cout<<"q - Uscita"<<endl; } int addizione(int a, int b) { int r = a+b; return r; } int sottrazione(int a, int b) { int r = a-b; return r; } int moltiplicazione(int a, int b) { int r = a*b; return r; } float divisione(int a, int b) { int r = a/b; return r; }
Torna a funzioni