/* In questo esempio vediamo come dichiarare una varibile di tipo float, viene introdotta la struttura switch-case, l'operatore logico || (or) e l'utilizzo di una variabile flag */ #include /*includo la libreria standard I/O*/ void main(void){ int primo_operando; /*dichiaro le variabili*/ int secondo_operando; float risultato; /*dichiro la variabile di tipo float*/ int operazione; int flag=0; /*dichiaro la variabile flag e la inizializzo a 0*/ printf("Inserisci il primo operando: "); scanf("%i",&primo_operando); /*catturo il primo operando*/ printf("Inserisci il secondo operando: "); scanf("%i",&secondo_operando); /*catturo il secondo operando*/ printf("Scegli quale operazione svolgere:\n"); /*chiedo quale opearazione svolgere*/ printf("per la somma secegli 1\n"); printf("per la sottrazione scegli 2\n"); printf("per il prodotto scegli 3\n"); printf("per la divisione scegli 4\n"); do{ scanf("%i",&operazione); if ((operazione<1)||(operazione>4)){ /*se la scelta è sbagliata lo comunico*/ printf("Scelta non corretta, riprovare\n"); } /*fino a quando il numero della scelta*/ }while((operazione<1)||(operazione>4)); /*non è compreso fra 1 e 4 resto nel ciclo*/ switch (operazione){ /*inizia la scelta multipla*/ case 1: /*nel primo caso somma*/ risultato=primo_operando+secondo_operando; break; /*esco dallo switch*/ case 2: /*nel secondo caso sottrazione*/ risultato=primo_operando-secondo_operando; break; /*esco dallo switch*/ case 3: /*nel terzo caso prodotto*/ risultato=primo_operando*secondo_operando; break; /*esco dallo switch*/ default: /*nel quarto caso divisione*/ if (secondo_operando==0){ /*non posso dividere per 0!!!*/ printf("Il secondo operando e' uguale a zero.... e non si puo' dividere per zero!\n"); flag=1; }else{ risultato=primo_operando/secondo_operando; /*... ma se non è zero...*/ } break; /*esco dallo switch*/ } if (flag==1){ /*volevo fare una divisione ma il secondo operando era 0*/ printf("Peccato... non ho potuto calcolare il risultato\n"); }else{ /*OK ho fatto l'operazione richiesta...*/ printf("Il risultato dell'operazione e' %f \n",risultato); /*e questo è il risultato*/ } system("pause"); /*aspetto la pressione di un tasto*/ }