// TITOLO: BINARY CODE (version 1.5)
// DESCRIZIONE: Programma per la conversione e la trattazione di numeri binari.
// DATA di CREAZIONE: 7 Dicembre 2008
// AUTORE: Farinelli Agnese
// VERSIONE: Linux UBUNTU

#include <stdio.h>
#include <stdlib.h>
#include <math.h>

int converter_base10_base2(int a);

main()
{
int a,b,c,d,e,f,g,h;
int a1,b1;
int a2,b2;
int a3,b3;
int a4,b4;
int n;
int z,x,y,w;
int num,numa,numb,numc,numd,nume,numf,numg,numh;
int somma,somma1,somma2,somma3,somma4;
int riporto,riporto1,riporto2,riporto3,riporto4;
int basic;

system("clear");
printf("\n************************* BINARY CODE (version 1.7) *************************\n");
printf("                           -(versione incompleta)-                           \n\n");
printf("Benvenuto in BINARY CODE. Scegli l'operazione che vuoi eseguire:\n\n");
printf("1] convertire un num. DECIMALE in un num. BINARIO.\n");
printf("2] convertire un num. BINARIO in un num. DECIMALE.\n");
printf("3] sommare due numeri binari (di medesima lunghezza).\n");
printf("4] sottrarre due numeri binari (di medesima lunghezza).\n\n");
printf("5] visualizza le ISTRUZIONI di BINARY CODE.\n");
printf("6] visualizzare i CREDITS.\n");
printf("7] esci da BINARY CODE.\n\n");
printf("Hai scelto l'opzione n. ");
scanf("%d",&n);

  switch (n){
          case 1: 
            printf("\n*****************************************************************************\n");
            printf("\nHai scelto di convertire un num. decimale in un num. binario.\n");
            printf("Inserisci il num. decimale che vuoi convertire binario.\n");
            printf("*----------------------------------*\n");
            printf("Num. decimale da convertire:\n");
            scanf("%d",&a);
            printf("*----------------------------------*\n");
            printf("Num. binario convertito:\n");
            basic=converter_base10_base2(a);
            printf("\n");
            printf("\n*****************************************************************************\n\n");
            break;
          case 2: 
            printf("\n*****************************************************************************\n");
            printf("\nHai scelto di convertire un num. binario in un num. decimale.\n");
            printf("Quante cifre ha il numero che vuoi convertire? --> ");
            scanf("%d",&z);
            if(z==1){
              printf("Inserisci il num. binario che vuoi convertire in decimale.\n");
              printf("--> ");
              scanf("%d",&a);
              numa=a*pow(2,0);
              printf("Num. binario da convertire: %d\n",a);
              printf("Num. decimale convertito: %d\n",numa);
              printf("\n*****************************************************************************\n\n");
              }
            if(z==2){
              printf("Inserisci la cifra n.1:\n");
              printf("--> ");
              scanf("%d",&a);
              printf("Inserisci la cifra n.2:\n");
              printf("--> ");
              scanf("%d",&b);
              numa=a*pow(2,1);
              numb=b*pow(2,0);
              num=numa+numb;
              printf("Num. binario da convertire: %d%d\n",a,b);
              printf("Num. decimale convertito: %d\n",num);
              printf("\n*****************************************************************************\n\n");
              }
              if(z==3){
              printf("Inserisci la cifra n.1:\n");
              printf("--> ");
              scanf("%d",&a);
              printf("Inserisci la cifra n.2:\n");
              printf("--> ");
              scanf("%d",&b);
              printf("Inserisci la cifra n.3:\n");
              printf("--> ");
              scanf("%d",&c);
              numa=a*pow(2,2);
              numb=b*pow(2,1);
              numc=c*pow(2,0);
              num=numa+numb+numc;
              printf("Num. binario da convertire: %d%d%d\n",a,b,c);
              printf("Num. decimale convertito: %d\n",num);
              printf("\n*****************************************************************************\n\n");
              }
              if(z==4){
              printf("Inserisci la cifra n.1:\n");
              printf("--> ");
              scanf("%d",&a);
              printf("Inserisci la cifra n.2:\n");
              printf("--> ");
              scanf("%d",&b);
              printf("Inserisci la cifra n.3:\n");
              printf("--> ");
              scanf("%d",&c);
              printf("Inserisci la cifra n.4:\n");
              printf("--> ");
              scanf("%d",&d);
              numa=a*pow(2,3);
              numb=b*pow(2,2);
              numc=c*pow(2,1);
              numd=d*pow(2,0);
              num=numa+numb+numc+numd;
              printf("Num. binario da convertire: %d%d%d%d\n",a,b,c,d);
              printf("Num. decimale convertito: %d\n",num);
              printf("\n*****************************************************************************\n\n");
              }
              if(z==5){
              printf("Inserisci la cifra n.1:\n");
              printf("--> ");
              scanf("%d",&a);
              printf("Inserisci la cifra n.2:\n");
              printf("--> ");
              scanf("%d",&b);
              printf("Inserisci la cifra n.3:\n");
              printf("--> ");
              scanf("%d",&c);
              printf("Inserisci la cifra n.4:\n");
              printf("--> ");
              scanf("%d",&d);
              printf("Inserisci la cifra n.5:\n");
              printf("--> ");
              scanf("%d",&e);
              numa=a*pow(2,4);
              numb=b*pow(2,3);
              numc=c*pow(2,2);
              numd=d*pow(2,1);
              nume=e*pow(2,0);
              num=numa+numb+numc+numd+nume;
              printf("Num. binario da convertire: %d%d%d%d%d\n",a,b,c,d,e);
              printf("Num. decimale convertito: %d\n",num);
              printf("\n*****************************************************************************\n\n");
              }
              if(z==6){
              printf("Inserisci la cifra n.1:\n");
              printf("--> ");
              scanf("%d",&a);
              printf("Inserisci la cifra n.2:\n");
              printf("--> ");
              scanf("%d",&b);
              printf("Inserisci la cifra n.3:\n");
              printf("--> ");
              scanf("%d",&c);
              printf("Inserisci la cifra n.4:\n");
              printf("--> ");
              scanf("%d",&d);
              printf("Inserisci la cifra n.5:\n");
              printf("--> ");
              scanf("%d",&e);
              printf("Inserisci la cifra n.6:\n");
              printf("--> ");
              scanf("%d",&f);
              numa=a*pow(2,5);
              numb=b*pow(2,4);
              numc=c*pow(2,3);
              numd=d*pow(2,2);
              nume=e*pow(2,1);
              numf=f*pow(2,0);
              num=numa+numb+numc+numd+nume+numf;
              printf("Num. binario da convertire: %d%d%d%d%d%d\n",a,b,c,d,e,f);
              printf("Num. decimale convertito: %d\n",num);
              printf("\n*****************************************************************************\n\n");
              }
              if(z==7){
              printf("Inserisci la cifra n.1:\n");
              printf("--> ");
              scanf("%d",&a);
              printf("Inserisci la cifra n.2:\n");
              printf("--> ");
              scanf("%d",&b);
              printf("Inserisci la cifra n.3:\n");
              printf("--> ");
              scanf("%d",&c);
              printf("Inserisci la cifra n.4:\n");
              printf("--> ");
              scanf("%d",&d);
              printf("Inserisci la cifra n.5:\n");
              printf("--> ");
              scanf("%d",&e);
              printf("Inserisci la cifra n.6:\n");
              printf("--> ");
              scanf("%d",&f);
              printf("Inserisci la cifra n.7:\n");
              printf("--> ");
              scanf("%d",&g);
              numa=a*pow(2,6);
              numb=b*pow(2,5);
              numc=c*pow(2,4);
              numd=d*pow(2,3);
              nume=e*pow(2,2);
              numf=f*pow(2,1);
              numg=g*pow(2,0);
              num=numa+numb+numc+numd+nume+numf+numg;
              printf("Num. binario da convertire: %d%d%d%d%d%d%d\n",a,b,c,d,e,f,g);
              printf("Num. decimale convertito: %d\n",num);
              printf("\n*****************************************************************************\n\n");
              }
              if(z==8){
              printf("Inserisci la cifra n.1:\n");
              printf("--> ");
              scanf("%d",&a);
              printf("Inserisci la cifra n.2:\n");
              printf("--> ");
              scanf("%d",&b);
              printf("Inserisci la cifra n.3:\n");
              printf("--> ");
              scanf("%d",&c);
              printf("Inserisci la cifra n.4:\n");
              printf("--> ");
              scanf("%d",&d);
              printf("Inserisci la cifra n.5:\n");
              printf("--> ");
              scanf("%d",&e);
              printf("Inserisci la cifra n.6:\n");
              printf("--> ");
              scanf("%d",&f);
              printf("Inserisci la cifra n.7:\n");
              printf("--> ");
              scanf("%d",&g);
              printf("Inserisci la cifra n.8:\n");
              printf("--> ");
              scanf("%d",&h);
              numa=a*pow(2,7);
              numb=b*pow(2,6);
              numc=c*pow(2,5);
              numd=d*pow(2,4);
              nume=e*pow(2,3);
              numf=f*pow(2,2);
              numg=g*pow(2,1);
              numh=h*pow(2,0);
              num=numa+numb+numc+numd+nume+numf+numg+numh;
              printf("Num. binario da convertire: %d%d%d%d%d%d%d%d\n",a,b,c,d,e,f,g,h);
              printf("Num. decimale convertito: %d\n",num);
              printf("\n*****************************************************************************\n\n");
              }
            break;
	  case 3: 
            printf("\n*****************************************************************************\n");
            printf("\nHai scelto di sommare due numeri binari.\n\n");
            printf("ATTENZIONE: si ha la possibilita' di lavorare esclusivamente con numeri binari\n");
            printf("non più lunghi di 4 cifre. La software-house si sta organizzando per poter\n");
            printf("trattare numeri binari fino ad 8 cifre.\n\n");
            printf("Quante cifre hanno singolarmente gli addendi che vuoi utilizzare? --> ");
            scanf("%d",&z);
            if(z==1){ //Se gli addendi hanno una cifra...
              printf("Inserisci l'addendo n.1.\n");
              printf("--> ");
              scanf("%d",&a);
              printf("Inserisci l'addendo n.2.\n");
              printf("--> ");
              scanf("%d",&b);
              somma=a+b;
              if(somma==0){
                somma=0;
                riporto=0;
              }
              if(somma==1){
                somma=1;
                riporto=0;
              }
              if(somma>1){
                somma=0;
                riporto=1;
              }
              printf("\n");
              printf("   %d +\n",a);
              printf("   %d =\n",b);
              printf("--------\n");
              printf("  %d%d \n",riporto,somma);
              printf("\n*****************************************************************************\n\n");
            }
            if(z==2){ //Se gli addendi hann0 2 cifre...
              printf("Inserisci la PRIMA cifra dell'addendo n.1.\n");
              printf("--> ");
              scanf("%d",&a);
              printf("Inserisci la SECONDA cifra dell'addendo n.1.\n");
              printf("--> ");
              scanf("%d",&a1);
              printf("Inserisci la PRIMA cifra dell'addendo n.2.\n");
              printf("--> ");
              scanf("%d",&b);
              printf("Inserisci la SECONDA cifra dell'addendo n.2.\n");
              printf("--> ");
              scanf("%d",&b1);
              somma=a+b;
              somma1=a1+b1;
              if(somma1==0){
                somma1=0;
                riporto1=0;
                if(somma==0 && riporto1==0){
                  somma=0;
                  riporto=0;
                }
                if(somma==1 && riporto1==0){
                  somma=1;
                  riporto=0;
                }
                if(somma>1 && riporto1==0){
                  somma=0;
                  riporto=1;
                }
               }
              if(somma1==1){
                somma1=1;
                riporto1=0;
                if(somma==0 && riporto1==0){
                  somma=0;
                  riporto=0;
                }
                if(somma==1 && riporto1==0){
                  somma=1;
                  riporto=0;
                }
                if(somma>1 && riporto1==0){
                  somma=0;
                  riporto=1;
                }
              }
              if(somma1>1){
                somma1=0;
                riporto1=1;
                if(somma==0 && riporto1==1){
                  somma=1;
                  riporto=0;
                }
                if(somma==1 && riporto1==1){
                  somma=0;
                  riporto=1;
                }
                if(somma>1 && riporto1==1){
                  somma=1;
                  riporto=1;
                }
              }
              printf("\n");
              printf("   %d%d +\n",a,a1);
              printf("   %d%d =\n",b,b1);
              printf("----------\n");
              printf("  %d%d%d \n",riporto,somma,somma1);
              printf("\n*****************************************************************************\n\n");
            }
            if(z==3){ //Se gli addendi hanno 3 cifre...
              printf("Inserisci la PRIMA cifra dell'addendo n.1.\n");
              printf("--> ");
              scanf("%d",&a);
              printf("Inserisci la SECONDA cifra dell'addendo n.1.\n");
              printf("--> ");
              scanf("%d",&a1);
              printf("Inserisci la TERZA cifra dell'addendo n.1.\n");
              printf("--> ");
              scanf("%d",&a2);
              printf("Inserisci la PRIMA cifra dell'addendo n.2.\n");
              printf("--> ");
              scanf("%d",&b);
              printf("Inserisci la SECONDA cifra dell'addendo n.2.\n");
              printf("--> ");
              scanf("%d",&b1);
              printf("Inserisci la TERZA cifra dell'addendo n.2.\n");
              printf("--> ");
              scanf("%d",&b2);
              somma=a+b;
              somma1=a1+b1;
              somma2=a2+b2;
              if(somma2==0){
                somma2=0;
                riporto2=0;
                if(somma1==0 && riporto2==0){
                  somma1=0;
                  riporto1=0;
                    if(somma==0 && riporto1==0){
                    somma=0;
                    riporto=0;
                    }
                    if(somma==1 && riporto1==0){
                      somma=1;
                      riporto=0;
                    }
                    if(somma>1 && riporto1==0){
                      somma=0;
                      riporto=1;
                    }
                }
                if(somma1==1 && riporto2==0){
                  somma1=1;
                  riporto1=0;
                  if(somma==0 && riporto1==0){
                    somma=0;
                    riporto=0;
                    }
                    if(somma==1 && riporto1==0){
                      somma=1;
                      riporto=0;
                    }
                    if(somma>1 && riporto1==0){
                      somma=0;
                      riporto=1;
                    }
                }
                if(somma1>1 && riporto2==0){
                  somma1=0;
                  riporto1=1;
                   if(somma==0 && riporto1==1){
                  somma=1;
                  riporto=0;
                  }
                  if(somma==1 && riporto1==1){
                    somma=0;
                    riporto=1;
                  }
                  if(somma>1 && riporto1==1){
                    somma=1;
                    riporto=1;
                  }
                }
               }
              if(somma2==1){
                somma2=1;
                riporto2=0;
                if(somma1==0 && riporto2==0){
                  somma1=0;
                  riporto1=0;
                  if(somma==0 && riporto1==0){
                    somma=0;
                    riporto=0;
                    }
                    if(somma==1 && riporto1==0){
                      somma=1;
                      riporto=0;
                    }
                    if(somma>1 && riporto1==0){
                      somma=0;
                      riporto=1;
                       if(somma==0 && riporto1==1){
                  somma=1;
                  riporto=0;
                }
                if(somma==1 && riporto1==1){
                  somma=0;
                  riporto=1;
                }
                if(somma>1 && riporto1==1){
                  somma=1;
                  riporto=1;
                }
                    }
                }
                if(somma1==1 && riporto2==0){
                  somma1=1;
                  riporto1=0;
                  if(somma==0 && riporto1==0){
                    somma=0;
                    riporto=0;
                    }
                    if(somma==1 && riporto1==0){
                      somma=1;
                      riporto=0;
                    }
                    if(somma>1 && riporto1==0){
                      somma=0;
                      riporto=1;
                    }
                }
                if(somma1>1 && riporto2==0){
                  somma1=0;
                  riporto1=1;
                   if(somma==0 && riporto1==1){
                  somma=1;
                  riporto=0;
                }
                if(somma==1 && riporto1==1){
                  somma=0;
                  riporto=1;
                }
                if(somma>1 && riporto1==1){
                  somma=1;
                  riporto=1;
                }
                }
              }
              if(somma2>1){
                somma2=0;
                riporto2=1;
                if(somma1==0 && riporto2==1){
                  somma1=1;
                  riporto1=0;
                  if(somma==0 && riporto1==0){
                    somma=0;
                    riporto=0;
                    }
                    if(somma==1 && riporto1==0){
                      somma=1;
                      riporto=0;
                    }
                    if(somma>1 && riporto1==0){
                      somma=0;
                      riporto=1;
                    }
                }
                if(somma1==1 && riporto2==1){
                  somma1=0;
                  riporto1=1;
                   if(somma==0 && riporto1==1){
                  somma=1;
                  riporto=0;
                }
                if(somma==1 && riporto1==1){
                  somma=0;
                  riporto=1;
                }
                if(somma>1 && riporto1==1){
                  somma=1;
                  riporto=1;
                }
                }
                if(somma1>1 && riporto2==1){
                  somma1=1;
                  riporto1=1;
                   if(somma==0 && riporto1==1){
                  somma=1;
                  riporto=0;
                }
                if(somma==1 && riporto1==1){
                  somma=0;
                  riporto=1;
                }
                if(somma>1 && riporto1==1){
                  somma=1;
                  riporto=1;
                }
                }
              }
              printf("\n");
              printf("   %d%d%d +\n",a,a1,a2);
              printf("   %d%d%d =\n",b,b1,b2);
              printf("------------\n");
              printf("  %d%d%d%d \n",riporto,somma,somma1,somma2);
              printf("\n*****************************************************************************\n\n");
            }
            if(z==4){ //Se gli addendi hanno 4 cifre...
              printf("Inserisci la PRIMA cifra dell'addendo n.1.\n");
              printf("--> ");
              scanf("%d",&a);
              printf("Inserisci la SECONDA cifra dell'addendo n.1.\n");
              printf("--> ");
              scanf("%d",&a1);
              printf("Inserisci la TERZA cifra dell'addendo n.1.\n");
              printf("--> ");
              scanf("%d",&a2);
              printf("Inserisci la QUARTA cifra dell'addendo n.1.\n");
              printf("--> ");
              scanf("%d",&a3);
              printf("Inserisci la PRIMA cifra dell'addendo n.2.\n");
              printf("--> ");
              scanf("%d",&b);
              printf("Inserisci la SECONDA cifra dell'addendo n.2.\n");
              printf("--> ");
              scanf("%d",&b1);
              printf("Inserisci la TERZA cifra dell'addendo n.2.\n");
              printf("--> ");
              scanf("%d",&b2);
              printf("Inserisci la QUARTA cifra dell'addendo n.2.\n");
              printf("--> ");
              scanf("%d",&b3);
              somma=a+b;
              somma1=a1+b1;
              somma2=a2+b2;
              somma3=a3+b3;
              if(somma3==0){
                somma3=0;
                riporto3=0;
                if(somma2==0 && riporto3==0){
                  somma2=0;
                  riporto2=0;
                    if(somma1==0 && riporto2==0){
                    somma1=0;
                    riporto1=0;
                      if(somma==0 && riporto1==0){
                        somma=0;
                        riporto=0;
                       }
                       if(somma==1 && riporto1==0){
                        somma=1;
                        riporto=0;
                        }
                        if(somma>1 && riporto1==0){
                        somma=0;
                        riporto=1;
                        }
                    }
                    if(somma1==1 && riporto2==0){
                      somma1=1;
                      riporto1=0;
                         if(somma==0 && riporto1==0){
                        somma=0;
                        riporto=0;
                       }
                       if(somma==1 && riporto1==0){
                        somma=1;
                        riporto=0;
                        }
                        if(somma>1 && riporto1==0){
                        somma=0;
                        riporto=1;
                        }
                    }
                    if(somma1>1 && riporto2==0){
                      somma1=0;
                      riporto1=1;
                      if(somma==0 && riporto1==1){
                  somma=1;
                  riporto=0;
                  }
                  if(somma==1 && riporto1==1){
                    somma=0;
                    riporto=1;
                  }
                  if(somma>1 && riporto1==1){
                    somma=1;
                    riporto=1;
                  }
                    }
                }
                if(somma2==1 && riporto3==0){
                  somma2=1;
                  riporto3=0;
                  if(somma1==0 && riporto2==0){
                    somma1=0;
                    riporto1=0;
                     if(somma==0 && riporto1==0){
                        somma=0;
                        riporto=0;
                       }
                       if(somma==1 && riporto1==0){
                        somma=1;
                        riporto=0;
                        }
                        if(somma>1 && riporto1==0){
                        somma=0;
                        riporto=1;
                        }
                    }
                    if(somma1==1 && riporto2==0){
                      somma1=1;
                      riporto1=0;
                       if(somma==0 && riporto1==0){
                        somma=0;
                        riporto=0;
                       }
                       if(somma==1 && riporto1==0){
                        somma=1;
                        riporto=0;
                        }
                        if(somma>1 && riporto1==0){
                        somma=0;
                        riporto=1;
                        }
                    }
                    if(somma1>1 && riporto2==0){
                      somma1=0;
                      riporto1=1;
                      if(somma==0 && riporto1==1){
                  somma=1;
                  riporto=0;
                  }
                  if(somma==1 && riporto1==1){
                    somma=0;
                    riporto=1;
                  }
                  if(somma>1 && riporto1==1){
                    somma=1;
                    riporto=1;
                  }
                    }
                }
                if(somma2>1 && riporto3==0){
                  somma2=0;
                  riporto2=1;
                   if(somma1==0 && riporto2==1){
                  somma1=1;
                  riporto1=0;
                     if(somma==0 && riporto1==0){
                        somma=0;
                        riporto=0;
                       }
                       if(somma==1 && riporto1==0){
                        somma=1;
                        riporto=0;
                        }
                        if(somma>1 && riporto1==0){
                        somma=0;
                        riporto=1;
                        }
                  }
                  if(somma1==1 && riporto2==1){
                    somma1=0;
                    riporto1=1;
                    if(somma==0 && riporto1==1){
                  somma=1;
                  riporto=0;
                  }
                  if(somma==1 && riporto1==1){
                    somma=0;
                    riporto=1;
                  }
                  if(somma>1 && riporto1==1){
                    somma=1;
                    riporto=1;
                  }
                  }
                  if(somma1>1 && riporto2==1){
                    somma1=1;
                    riporto1=1;
                    if(somma==0 && riporto1==1){
                  somma=1;
                  riporto=0;
                  }
                  if(somma==1 && riporto1==1){
                    somma=0;
                    riporto=1;
                  }
                  if(somma>1 && riporto1==1){
                    somma=1;
                    riporto=1;
                  }
                  }
                }
               }
              if(somma3==1){
                somma3=1;
                riporto3=0;
                if(somma2==0 && riporto3==0){
                  somma2=0;
                  riporto2=0;
                  if(somma1==0 && riporto2==0){
                    somma1=0;
                    riporto1=0;
                       if(somma==0 && riporto1==0){
                        somma=0;
                        riporto=0;
                       }
                       if(somma==1 && riporto1==0){
                        somma=1;
                        riporto=0;
                        }
                        if(somma>1 && riporto1==0){
                        somma=0;
                        riporto=1;
                        }
                    }
                    if(somma1==1 && riporto2==0){
                      somma1=1;
                      riporto1=0;
                         if(somma==0 && riporto1==0){
                        somma=0;
                        riporto=0;
                       }
                       if(somma==1 && riporto1==0){
                        somma=1;
                        riporto=0;
                        }
                        if(somma>1 && riporto1==0){
                        somma=0;
                        riporto=1;
                        }
                    }
                    if(somma1>1 && riporto2==0){
                      somma1=0;
                      riporto1=1;
                      if(somma==0 && riporto1==1){
                  somma=1;
                  riporto=0;
                  }
                  if(somma==1 && riporto1==1){
                    somma=0;
                    riporto=1;
                  }
                  if(somma>1 && riporto1==1){
                    somma=1;
                    riporto=1;
                  }
                       if(somma1==0 && riporto2==1){
                  somma1=1;
                  riporto1=0;
                     if(somma==0 && riporto1==0){
                        somma=0;
                        riporto=0;
                       }
                       if(somma==1 && riporto1==0){
                        somma=1;
                        riporto=0;
                        }
                        if(somma>1 && riporto1==0){
                        somma=0;
                        riporto=1;
                        }
                }
                if(somma1==1 && riporto2==1){
                  somma1=0;
                  riporto1=1;
                  if(somma==0 && riporto1==1){
                  somma=1;
                  riporto=0;
                  }
                  if(somma==1 && riporto1==1){
                    somma=0;
                    riporto=1;
                  }
                  if(somma>1 && riporto1==1){
                    somma=1;
                    riporto=1;
                  }
                }
                if(somma1>1 && riporto2==1){
                  somma1=1;
                  riporto1=1;
                  if(somma==0 && riporto1==1){
                  somma=1;
                  riporto=0;
                  }
                  if(somma==1 && riporto1==1){
                    somma=0;
                    riporto=1;
                  }
                  if(somma>1 && riporto1==1){
                    somma=1;
                    riporto=1;
                  }
                }
                    }
                }
                if(somma2==1 && riporto3==0){
                  somma2=1;
                  riporto2=0;
                  if(somma1==0 && riporto2==0){
                    somma1=0;
                    riporto1=0;
                       if(somma==0 && riporto1==0){
                        somma=0;
                        riporto=0;
                       }
                       if(somma==1 && riporto1==0){
                        somma=1;
                        riporto=0;
                        }
                        if(somma>1 && riporto1==0){
                        somma=0;
                        riporto=1;
                        }
                    }
                    if(somma1==1 && riporto2==0){
                      somma1=1;
                      riporto1=0;
                         if(somma==0 && riporto1==0){
                        somma=0;
                        riporto=0;
                       }
                       if(somma==1 && riporto1==0){
                        somma=1;
                        riporto=0;
                        }
                        if(somma>1 && riporto1==0){
                        somma=0;
                        riporto=1;
                        }
                    }
                    if(somma1>1 && riporto2==0){
                      somma1=0;
                      riporto1=1;
                      if(somma==0 && riporto1==1){
                  somma=1;
                  riporto=0;
                  }
                  if(somma==1 && riporto1==1){
                    somma=0;
                    riporto=1;
                  }
                  if(somma>1 && riporto1==1){
                    somma=1;
                    riporto=1;
                  }
                    }
                }
                if(somma2>1 && riporto3==0){
                  somma2=0;
                  riporto2=1;
                   if(somma1==0 && riporto2==1){
                  somma1=1;
                  riporto1=0;
                     if(somma==0 && riporto1==0){
                        somma=0;
                        riporto=0;
                       }
                       if(somma==1 && riporto1==0){
                        somma=1;
                        riporto=0;
                        }
                        if(somma>1 && riporto1==0){
                        somma=0;
                        riporto=1;
                        }
                }
                if(somma1==1 && riporto2==1){
                  somma1=0;
                  riporto1=1;
                  if(somma==0 && riporto1==1){
                  somma=1;
                  riporto=0;
                  }
                  if(somma==1 && riporto1==1){
                    somma=0;
                    riporto=1;
                  }
                  if(somma>1 && riporto1==1){
                    somma=1;
                    riporto=1;
                  }
                }
                if(somma1>1 && riporto2==1){
                  somma1=1;
                  riporto1=1;
                  if(somma==0 && riporto1==1){
                  somma=1;
                  riporto=0;
                  }
                  if(somma==1 && riporto1==1){
                    somma=0;
                    riporto=1;
                  }
                  if(somma>1 && riporto1==1){
                    somma=1;
                    riporto=1;
                  }
                }
                }
              }
              if(somma3>1){
                somma3=0;
                riporto3=1;
                if(somma2==0 && riporto3==1){
                  somma2=1;
                  riporto2=0;
                  if(somma1==0 && riporto2==0){
                    somma1=0;
                    riporto1=0;
                     if(somma==0 && riporto1==0){
                        somma=0;
                        riporto=0;
                       }
                       if(somma==1 && riporto1==0){
                        somma=1;
                        riporto=0;
                        }
                        if(somma>1 && riporto1==0){
                        somma=0;
                        riporto=1;
                        }
                    }
                    if(somma1==1 && riporto2==0){
                      somma1=1;
                      riporto1=0;
                       if(somma==0 && riporto1==0){
                        somma=0;
                        riporto=0;
                       }
                       if(somma==1 && riporto1==0){
                        somma=1;
                        riporto=0;
                        }
                        if(somma>1 && riporto1==0){
                        somma=0;
                        riporto=1;
                        }
                    }
                    if(somma1>1 && riporto2==0){
                      somma1=0;
                      riporto1=1;
                      if(somma==0 && riporto1==1){
                  somma=1;
                  riporto=0;
                  }
                  if(somma==1 && riporto1==1){
                    somma=0;
                    riporto=1;
                  }
                  if(somma>1 && riporto1==1){
                    somma=1;
                    riporto=1;
                  }
                    }
                }
                if(somma2==1 && riporto3==1){
                  somma2=0;
                  riporto2=1;
                   if(somma1==0 && riporto2==1){
                  somma1=1;
                  riporto1=0;
                     if(somma==0 && riporto1==0){
                        somma=0;
                        riporto=0;
                       }
                       if(somma==1 && riporto1==0){
                        somma=1;
                        riporto=0;
                        }
                        if(somma>1 && riporto1==0){
                        somma=0;
                        riporto=1;
                        }
                }
                if(somma1==1 && riporto2==1){
                  somma1=0;
                  riporto1=1;
                  if(somma==0 && riporto1==1){
                  somma=1;
                  riporto=0;
                  }
                  if(somma==1 && riporto1==1){
                    somma=0;
                    riporto=1;
                  }
                  if(somma>1 && riporto1==1){
                    somma=1;
                    riporto=1;
                  }
                }
                if(somma1>1 && riporto2==1){
                  somma1=1;
                  riporto1=1;
                  if(somma==0 && riporto1==1){
                  somma=1;
                  riporto=0;
                  }
                  if(somma==1 && riporto1==1){
                    somma=0;
                    riporto=1;
                  }
                  if(somma>1 && riporto1==1){
                    somma=1;
                    riporto=1;
                  }
                }
                }
                if(somma2>1 && riporto3==1){
                  somma2=1;
                  riporto2=1;
                   if(somma1==0 && riporto2==1){
                  somma1=1;
                  riporto1=0;
                     if(somma==0 && riporto1==0){
                        somma=0;
                        riporto=0;
                       }
                       if(somma==1 && riporto1==0){
                        somma=1;
                        riporto=0;
                        }
                        if(somma>1 && riporto1==0){
                        somma=0;
                        riporto=1;
                        }
                }
                if(somma1==1 && riporto2==1){
                  somma1=0;
                  riporto1=1;
                  if(somma==0 && riporto1==1){
                  somma=1;
                  riporto=0;
                  }
                  if(somma==1 && riporto1==1){
                    somma=0;
                    riporto=1;
                  }
                  if(somma>1 && riporto1==1){
                    somma=1;
                    riporto=1;
                  }
                }
                if(somma1>1 && riporto2==1){
                  somma1=1;
                  riporto1=1;
                  if(somma==0 && riporto1==1){
                  somma=1;
                  riporto=0;
                  }
                  if(somma==1 && riporto1==1){
                    somma=0;
                    riporto=1;
                  }
                  if(somma>1 && riporto1==1){
                    somma=1;
                    riporto=1;
                  }
                }
                }
              }
              printf("\n");
              printf("   %d%d%d%d +\n",a,a1,a2,a3);
              printf("   %d%d%d%d =\n",b,b1,b2,b3);
              printf("--------------\n");
              printf("  %d%d%d%d%d \n",riporto,somma,somma1,somma2,somma3);
              printf("\n*****************************************************************************\n\n");
            }
            printf("Vuoi convertire il risultato ottenuto?\n");
            printf("1] Sì.\n2] No.\n");
            printf("Hai scelto l'opzione n. ");
            scanf("%d",&y);
            printf("\n");
            if(y==1){
            printf("Quante cifre ha il numero che vuoi convertire? --> ");
            scanf("%d",&z);
            if(z==1){
              printf("Inserisci il num. binario che vuoi convertire in decimale.\n");
              printf("--> ");
              scanf("%d",&a);
              numa=a*pow(2,0);
              printf("Num. binario da convertire: %d\n",a);
              printf("Num. decimale convertito: %d\n",numa);
              printf("\n*****************************************************************************\n\n");
              }
            if(z==2){
              printf("Inserisci la cifra n.1:\n");
              printf("--> ");
              scanf("%d",&a);
              printf("Inserisci la cifra n.2:\n");
              printf("--> ");
              scanf("%d",&b);
              numa=a*pow(2,1);
              numb=b*pow(2,0);
              num=numa+numb;
              printf("Num. binario da convertire: %d%d\n",a,b);
              printf("Num. decimale convertito: %d\n",num);
              printf("\n*****************************************************************************\n\n");
              }
              if(z==3){
              printf("Inserisci la cifra n.1:\n");
              printf("--> ");
              scanf("%d",&a);
              printf("Inserisci la cifra n.2:\n");
              printf("--> ");
              scanf("%d",&b);
              printf("Inserisci la cifra n.3:\n");
              printf("--> ");
              scanf("%d",&c);
              numa=a*pow(2,2);
              numb=b*pow(2,1);
              numc=c*pow(2,0);
              num=numa+numb+numc;
              printf("Num. binario da convertire: %d%d%d\n",a,b,c);
              printf("Num. decimale convertito: %d\n",num);
              printf("\n*****************************************************************************\n\n");
              }
              if(z==4){
              printf("Inserisci la cifra n.1:\n");
              printf("--> ");
              scanf("%d",&a);
              printf("Inserisci la cifra n.2:\n");
              printf("--> ");
              scanf("%d",&b);
              printf("Inserisci la cifra n.3:\n");
              printf("--> ");
              scanf("%d",&c);
              printf("Inserisci la cifra n.4:\n");
              printf("--> ");
              scanf("%d",&d);
              numa=a*pow(2,3);
              numb=b*pow(2,2);
              numc=c*pow(2,1);
              numd=d*pow(2,0);
              num=numa+numb+numc+numd;
              printf("Num. binario da convertire: %d%d%d%d\n",a,b,c,d);
              printf("Num. decimale convertito: %d\n",num);
              printf("\n*****************************************************************************\n\n");
              }
              if(z==5){
              printf("Inserisci la cifra n.1:\n");
              printf("--> ");
              scanf("%d",&a);
              printf("Inserisci la cifra n.2:\n");
              printf("--> ");
              scanf("%d",&b);
              printf("Inserisci la cifra n.3:\n");
              printf("--> ");
              scanf("%d",&c);
              printf("Inserisci la cifra n.4:\n");
              printf("--> ");
              scanf("%d",&d);
              printf("Inserisci la cifra n.5:\n");
              printf("--> ");
              scanf("%d",&e);
              numa=a*pow(2,4);
              numb=b*pow(2,3);
              numc=c*pow(2,2);
              numd=d*pow(2,1);
              nume=e*pow(2,0);
              num=numa+numb+numc+numd+nume;
              printf("Num. binario da convertire: %d%d%d%d%d\n",a,b,c,d,e);
              printf("Num. decimale convertito: %d\n",num);
              printf("\n*****************************************************************************\n\n");
              }
              if(z==6){
              printf("Inserisci la cifra n.1:\n");
              printf("--> ");
              scanf("%d",&a);
              printf("Inserisci la cifra n.2:\n");
              printf("--> ");
              scanf("%d",&b);
              printf("Inserisci la cifra n.3:\n");
              printf("--> ");
              scanf("%d",&c);
              printf("Inserisci la cifra n.4:\n");
              printf("--> ");
              scanf("%d",&d);
              printf("Inserisci la cifra n.5:\n");
              printf("--> ");
              scanf("%d",&e);
              printf("Inserisci la cifra n.6:\n");
              printf("--> ");
              scanf("%d",&f);
              numa=a*pow(2,5);
              numb=b*pow(2,4);
              numc=c*pow(2,3);
              numd=d*pow(2,2);
              nume=e*pow(2,1);
              numf=f*pow(2,0);
              num=numa+numb+numc+numd+nume+numf;
              printf("Num. binario da convertire: %d%d%d%d%d%d\n",a,b,c,d,e,f);
              printf("Num. decimale convertito: %d\n",num);
              printf("\n*****************************************************************************\n\n");
              }
              if(z==7){
              printf("Inserisci la cifra n.1:\n");
              printf("--> ");
              scanf("%d",&a);
              printf("Inserisci la cifra n.2:\n");
              printf("--> ");
              scanf("%d",&b);
              printf("Inserisci la cifra n.3:\n");
              printf("--> ");
              scanf("%d",&c);
              printf("Inserisci la cifra n.4:\n");
              printf("--> ");
              scanf("%d",&d);
              printf("Inserisci la cifra n.5:\n");
              printf("--> ");
              scanf("%d",&e);
              printf("Inserisci la cifra n.6:\n");
              printf("--> ");
              scanf("%d",&f);
              printf("Inserisci la cifra n.7:\n");
              printf("--> ");
              scanf("%d",&g);
              numa=a*pow(2,6);
              numb=b*pow(2,5);
              numc=c*pow(2,4);
              numd=d*pow(2,3);
              nume=e*pow(2,2);
              numf=f*pow(2,1);
              numg=g*pow(2,0);
              num=numa+numb+numc+numd+nume+numf+numg;
              printf("Num. binario da convertire: %d%d%d%d%d%d%d\n",a,b,c,d,e,f,g);
              printf("Num. decimale convertito: %d\n",num);
              printf("\n*****************************************************************************\n\n");
              }
              if(z==8){
              printf("Inserisci la cifra n.1:\n");
              printf("--> ");
              scanf("%d",&a);
              printf("Inserisci la cifra n.2:\n");
              printf("--> ");
              scanf("%d",&b);
              printf("Inserisci la cifra n.3:\n");
              printf("--> ");
              scanf("%d",&c);
              printf("Inserisci la cifra n.4:\n");
              printf("--> ");
              scanf("%d",&d);
              printf("Inserisci la cifra n.5:\n");
              printf("--> ");
              scanf("%d",&e);
              printf("Inserisci la cifra n.6:\n");
              printf("--> ");
              scanf("%d",&f);
              printf("Inserisci la cifra n.7:\n");
              printf("--> ");
              scanf("%d",&g);
              printf("Inserisci la cifra n.8:\n");
              printf("--> ");
              scanf("%d",&h);
              numa=a*pow(2,7);
              numb=b*pow(2,6);
              numc=c*pow(2,5);
              numd=d*pow(2,4);
              nume=e*pow(2,3);
              numf=f*pow(2,2);
              numg=g*pow(2,1);
              numh=h*pow(2,0);
              num=numa+numb+numc+numd+nume+numf+numg+numh;
              printf("Num. binario da convertire: %d%d%d%d%d%d%d%d\n",a,b,c,d,e,f,g,h);
              printf("Num. decimale convertito: %d\n",num);
              printf("\n*****************************************************************************\n\n");
              }
            }
            else{
              exit(0);
              printf("\n*****************************************************************************\n\n");
            }
            
            break;
	  case 4: 
            printf("\n*****************************************************************************\n\n");
            printf("Hai scelto di compiere una sottrazione tra numeri binari.\n\n");
            printf("ATTENZIONE: si ha la possibilita' di lavorare esclusivamente con numeri binari\n");
            printf("non più lunghi di 4 cifre. La software-house si sta organizzando per poter\n");
            printf("trattare numeri binari fino ad 8 cifre.\n\n");
            printf("IMPORTANTE: La sottrazione mediante numeri in base 2 e' un'operazione delicata.\n");
            printf("E' necessario inserire il termine n.2 della sottrazione INVERTITO, ovvero se il\n");
            printf("numero che si vuole utilizzare e' '001', al fine di compiere una corretta sottra-\n");
            printf("zione va convertito in COMPLEMETO A 1 ed ad ogni 0 va sostituito l'1, mentre ad\n");
            printf("ogni 1 va sostituito lo 0. Nell'esempio, il numero corretto da inserire e' '110'.\n");
            printf("  ESEMPIO: Num. di partenza= '001'\n");
            printf("           Num. invertito= '110'\n");
            printf("           Num. da utilizzare= '110'+'1'='111'\n\n");
            printf("Quante cifre hanno singolarmente i termini che vuoi utilizzare? --> ");
            scanf("%d",&z);
            if(z==1){ //Se i termini hanno una cifra...
              printf("Inserisci il termine n.1.\n");
              printf("--> ");
              scanf("%d",&a);
              printf("Inserisci il termine n.2.\n");
              printf("--> ");
              scanf("%d",&b);
              somma=a+b;
              if(somma==0){
                somma=0;
                riporto=0;
              }
              if(somma==1){
                somma=1;
                riporto=0;
              }
              if(somma>1){
                somma=0;
                riporto=1;
              }
              printf("    %d -\n",a);
              printf("    %d =\n",b);
              printf("  ------\n");
              printf("  [%d]%d\n",riporto,somma);
              printf("La cifra racchiusa tra parentesi è il RIPORTO: vale 1 se il numero e'\n");
              printf("POSITIVO, 0 se il numero e' NEGATIVO.\n");
              printf("\n*****************************************************************************\n\n");
            }
            if(z==2){ //Se gli addendi hann0 2 cifre...
              printf("Inserisci la PRIMA cifra del termine n.1.\n");
              printf("--> ");
              scanf("%d",&a);
              printf("Inserisci la SECONDA cifra del termine n.1.\n");
              printf("--> ");
              scanf("%d",&a1);
              printf("Inserisci la PRIMA cifra del termine n.2.\n");
              printf("--> ");
              scanf("%d",&b);
              printf("Inserisci la SECONDA cifra del termine n.2.\n");
              printf("--> ");
              scanf("%d",&b1);
              somma=a+b;
              somma1=a1+b1;
              if(somma1==0){
                somma1=0;
                riporto1=0;
                if(somma==0 && riporto1==0){
                  somma=0;
                  riporto=0;
                }
                if(somma==1 && riporto1==0){
                  somma=1;
                  riporto=0;
                }
                if(somma>1 && riporto1==0){
                  somma=0;
                  riporto=1;
                }
               }
              if(somma1==1){
                somma1=1;
                riporto1=0;
                if(somma==0 && riporto1==0){
                  somma=0;
                  riporto=0;
                }
                if(somma==1 && riporto1==0){
                  somma=1;
                  riporto=0;
                }
                if(somma>1 && riporto1==0){
                  somma=0;
                  riporto=1;
                }
              }
              if(somma1>1){
                somma1=0;
                riporto1=1;
                if(somma==0 && riporto1==1){
                  somma=1;
                  riporto=0;
                }
                if(somma==1 && riporto1==1){
                  somma=0;
                  riporto=1;
                }
                if(somma>1 && riporto1==1){
                  somma=1;
                  riporto=1;
                }
              }
              printf("    %d%d -\n",a,a1);
              printf("    %d%d =\n",b,b1);
              printf("  --------\n");
              printf("  [%d]%d%d\n",riporto,somma,somma1);
              printf("La cifra racchiusa tra parentesi è il RIPORTO: vale 1 se il numero e'\n");
              printf("POSITIVO, 0 se il numero e' NEGATIVO.\n");
              printf("\n*****************************************************************************\n\n");
             }
              if(z==3){ //Se i termini hanno 3 cifre...
              printf("Inserisci la PRIMA cifra del termine n.1.\n");
              printf("--> ");
              scanf("%d",&a);
              printf("Inserisci la SECONDA cifra del termine n.1.\n");
              printf("--> ");
              scanf("%d",&a1);
              printf("Inserisci la TERZA cifra del termine n.1.\n");
              printf("--> ");
              scanf("%d",&a2);
              printf("Inserisci la PRIMA cifra del termine n.2.\n");
              printf("--> ");
              scanf("%d",&b);
              printf("Inserisci la SECONDA cifra del termine n.2.\n");
              printf("--> ");
              scanf("%d",&b1);
              printf("Inserisci la TERZA cifra del termine n.2.\n");
              printf("--> ");
              scanf("%d",&b2);
              somma=a+b;
              somma1=a1+b1;
              somma2=a2+b2;
              if(somma2==0){
                somma2=0;
                riporto2=0;
                if(somma1==0 && riporto2==0){
                  somma1=0;
                  riporto1=0;
                    if(somma==0 && riporto1==0){
                    somma=0;
                    riporto=0;
                    }
                    if(somma==1 && riporto1==0){
                      somma=1;
                      riporto=0;
                    }
                    if(somma>1 && riporto1==0){
                      somma=0;
                      riporto=1;
                    }
                }
                if(somma1==1 && riporto2==0){
                  somma1=1;
                  riporto1=0;
                  if(somma==0 && riporto1==0){
                    somma=0;
                    riporto=0;
                    }
                    if(somma==1 && riporto1==0){
                      somma=1;
                      riporto=0;
                    }
                    if(somma>1 && riporto1==0){
                      somma=0;
                      riporto=1;
                    }
                }
                if(somma1>1 && riporto2==0){
                  somma1=0;
                  riporto1=1;
                   if(somma==0 && riporto1==1){
                  somma=1;
                  riporto=0;
                  }
                  if(somma==1 && riporto1==1){
                    somma=0;
                    riporto=1;
                  }
                  if(somma>1 && riporto1==1){
                    somma=1;
                    riporto=1;
                  }
                }
               }
              if(somma2==1){
                somma2=1;
                riporto2=0;
                if(somma1==0 && riporto2==0){
                  somma1=0;
                  riporto1=0;
                  if(somma==0 && riporto1==0){
                    somma=0;
                    riporto=0;
                    }
                    if(somma==1 && riporto1==0){
                      somma=1;
                      riporto=0;
                    }
                    if(somma>1 && riporto1==0){
                      somma=0;
                      riporto=1;
                       if(somma==0 && riporto1==1){
                  somma=1;
                  riporto=0;
                }
                if(somma==1 && riporto1==1){
                  somma=0;
                  riporto=1;
                }
                if(somma>1 && riporto1==1){
                  somma=1;
                  riporto=1;
                }
                    }
                }
                if(somma1==1 && riporto2==0){
                  somma1=1;
                  riporto1=0;
                  if(somma==0 && riporto1==0){
                    somma=0;
                    riporto=0;
                    }
                    if(somma==1 && riporto1==0){
                      somma=1;
                      riporto=0;
                    }
                    if(somma>1 && riporto1==0){
                      somma=0;
                      riporto=1;
                    }
                }
                if(somma1>1 && riporto2==0){
                  somma1=0;
                  riporto1=1;
                   if(somma==0 && riporto1==1){
                  somma=1;
                  riporto=0;
                }
                if(somma==1 && riporto1==1){
                  somma=0;
                  riporto=1;
                }
                if(somma>1 && riporto1==1){
                  somma=1;
                  riporto=1;
                }
                }
              }
              if(somma2>1){
                somma2=0;
                riporto2=1;
                if(somma1==0 && riporto2==1){
                  somma1=1;
                  riporto1=0;
                  if(somma==0 && riporto1==0){
                    somma=0;
                    riporto=0;
                    }
                    if(somma==1 && riporto1==0){
                      somma=1;
                      riporto=0;
                    }
                    if(somma>1 && riporto1==0){
                      somma=0;
                      riporto=1;
                    }
                }
                if(somma1==1 && riporto2==1){
                  somma1=0;
                  riporto1=1;
                   if(somma==0 && riporto1==1){
                  somma=1;
                  riporto=0;
                }
                if(somma==1 && riporto1==1){
                  somma=0;
                  riporto=1;
                }
                if(somma>1 && riporto1==1){
                  somma=1;
                  riporto=1;
                }
                }
                if(somma1>1 && riporto2==1){
                  somma1=1;
                  riporto1=1;
                   if(somma==0 && riporto1==1){
                  somma=1;
                  riporto=0;
                }
                if(somma==1 && riporto1==1){
                  somma=0;
                  riporto=1;
                }
                if(somma>1 && riporto1==1){
                  somma=1;
                  riporto=1;
                }
                }
              }
              printf("    %d%d%d -\n",a,a1,a2);
              printf("    %d%d%d =\n",b,b1,b2);
              printf("  ----------\n");
              printf("  [%d]%d%d%d\n",riporto,somma,somma1,somma2);
              printf("La cifra racchiusa tra parentesi è il RIPORTO: vale 1 se il numero e'\n");
              printf("POSITIVO, 0 se il numero e' NEGATIVO.\n");
              printf("\n*****************************************************************************\n\n");
             }
             if(z==4){ //Se gli addendi hanno 4 cifre...
              printf("Inserisci la PRIMA cifra del termine n.1.\n");
              printf("--> ");
              scanf("%d",&a);
              printf("Inserisci la SECONDA cifra del termine n.1.\n");
              printf("--> ");
              scanf("%d",&a1);
              printf("Inserisci la TERZA cifra del termine n.1.\n");
              printf("--> ");
              scanf("%d",&a2);
              printf("Inserisci la QUARTA cifra del termine n.1.\n");
              printf("--> ");
              scanf("%d",&a3);
              printf("Inserisci la PRIMA cifra del termine n.2.\n");
              printf("--> ");
              scanf("%d",&b);
              printf("Inserisci la SECONDA cifra del termine n.2.\n");
              printf("--> ");
              scanf("%d",&b1);
              printf("Inserisci la TERZA cifra del termine n.2.\n");
              printf("--> ");
              scanf("%d",&b2);
              printf("Inserisci la QUARTA cifra del termine n.2.\n");
              printf("--> ");
              scanf("%d",&b3);
              somma=a+b;
              somma1=a1+b1;
              somma2=a2+b2;
              somma3=a3+b3;
              if(somma3==0){
                somma3=0;
                riporto3=0;
                if(somma2==0 && riporto3==0){
                  somma2=0;
                  riporto2=0;
                    if(somma1==0 && riporto2==0){
                    somma1=0;
                    riporto1=0;
                      if(somma==0 && riporto1==0){
                        somma=0;
                        riporto=0;
                       }
                       if(somma==1 && riporto1==0){
                        somma=1;
                        riporto=0;
                        }
                        if(somma>1 && riporto1==0){
                        somma=0;
                        riporto=1;
                        }
                    }
                    if(somma1==1 && riporto2==0){
                      somma1=1;
                      riporto1=0;
                         if(somma==0 && riporto1==0){
                        somma=0;
                        riporto=0;
                       }
                       if(somma==1 && riporto1==0){
                        somma=1;
                        riporto=0;
                        }
                        if(somma>1 && riporto1==0){
                        somma=0;
                        riporto=1;
                        }
                    }
                    if(somma1>1 && riporto2==0){
                      somma1=0;
                      riporto1=1;
                      if(somma==0 && riporto1==1){
                  somma=1;
                  riporto=0;
                  }
                  if(somma==1 && riporto1==1){
                    somma=0;
                    riporto=1;
                  }
                  if(somma>1 && riporto1==1){
                    somma=1;
                    riporto=1;
                  }
                    }
                }
                if(somma2==1 && riporto3==0){
                  somma2=1;
                  riporto3=0;
                  if(somma1==0 && riporto2==0){
                    somma1=0;
                    riporto1=0;
                     if(somma==0 && riporto1==0){
                        somma=0;
                        riporto=0;
                       }
                       if(somma==1 && riporto1==0){
                        somma=1;
                        riporto=0;
                        }
                        if(somma>1 && riporto1==0){
                        somma=0;
                        riporto=1;
                        }
                    }
                    if(somma1==1 && riporto2==0){
                      somma1=1;
                      riporto1=0;
                       if(somma==0 && riporto1==0){
                        somma=0;
                        riporto=0;
                       }
                       if(somma==1 && riporto1==0){
                        somma=1;
                        riporto=0;
                        }
                        if(somma>1 && riporto1==0){
                        somma=0;
                        riporto=1;
                        }
                    }
                    if(somma1>1 && riporto2==0){
                      somma1=0;
                      riporto1=1;
                      if(somma==0 && riporto1==1){
                  somma=1;
                  riporto=0;
                  }
                  if(somma==1 && riporto1==1){
                    somma=0;
                    riporto=1;
                  }
                  if(somma>1 && riporto1==1){
                    somma=1;
                    riporto=1;
                  }
                    }
                }
                if(somma2>1 && riporto3==0){
                  somma2=0;
                  riporto2=1;
                   if(somma1==0 && riporto2==1){
                  somma1=1;
                  riporto1=0;
                     if(somma==0 && riporto1==0){
                        somma=0;
                        riporto=0;
                       }
                       if(somma==1 && riporto1==0){
                        somma=1;
                        riporto=0;
                        }
                        if(somma>1 && riporto1==0){
                        somma=0;
                        riporto=1;
                        }
                  }
                  if(somma1==1 && riporto2==1){
                    somma1=0;
                    riporto1=1;
                    if(somma==0 && riporto1==1){
                  somma=1;
                  riporto=0;
                  }
                  if(somma==1 && riporto1==1){
                    somma=0;
                    riporto=1;
                  }
                  if(somma>1 && riporto1==1){
                    somma=1;
                    riporto=1;
                  }
                  }
                  if(somma1>1 && riporto2==1){
                    somma1=1;
                    riporto1=1;
                    if(somma==0 && riporto1==1){
                  somma=1;
                  riporto=0;
                  }
                  if(somma==1 && riporto1==1){
                    somma=0;
                    riporto=1;
                  }
                  if(somma>1 && riporto1==1){
                    somma=1;
                    riporto=1;
                  }
                  }
                }
               }
              if(somma3==1){
                somma3=1;
                riporto3=0;
                if(somma2==0 && riporto3==0){
                  somma2=0;
                  riporto2=0;
                  if(somma1==0 && riporto2==0){
                    somma1=0;
                    riporto1=0;
                       if(somma==0 && riporto1==0){
                        somma=0;
                        riporto=0;
                       }
                       if(somma==1 && riporto1==0){
                        somma=1;
                        riporto=0;
                        }
                        if(somma>1 && riporto1==0){
                        somma=0;
                        riporto=1;
                        }
                    }
                    if(somma1==1 && riporto2==0){
                      somma1=1;
                      riporto1=0;
                         if(somma==0 && riporto1==0){
                        somma=0;
                        riporto=0;
                       }
                       if(somma==1 && riporto1==0){
                        somma=1;
                        riporto=0;
                        }
                        if(somma>1 && riporto1==0){
                        somma=0;
                        riporto=1;
                        }
                    }
                    if(somma1>1 && riporto2==0){
                      somma1=0;
                      riporto1=1;
                      if(somma==0 && riporto1==1){
                  somma=1;
                  riporto=0;
                  }
                  if(somma==1 && riporto1==1){
                    somma=0;
                    riporto=1;
                  }
                  if(somma>1 && riporto1==1){
                    somma=1;
                    riporto=1;
                  }
                       if(somma1==0 && riporto2==1){
                  somma1=1;
                  riporto1=0;
                     if(somma==0 && riporto1==0){
                        somma=0;
                        riporto=0;
                       }
                       if(somma==1 && riporto1==0){
                        somma=1;
                        riporto=0;
                        }
                        if(somma>1 && riporto1==0){
                        somma=0;
                        riporto=1;
                        }
                }
                if(somma1==1 && riporto2==1){
                  somma1=0;
                  riporto1=1;
                  if(somma==0 && riporto1==1){
                  somma=1;
                  riporto=0;
                  }
                  if(somma==1 && riporto1==1){
                    somma=0;
                    riporto=1;
                  }
                  if(somma>1 && riporto1==1){
                    somma=1;
                    riporto=1;
                  }
                }
                if(somma1>1 && riporto2==1){
                  somma1=1;
                  riporto1=1;
                  if(somma==0 && riporto1==1){
                  somma=1;
                  riporto=0;
                  }
                  if(somma==1 && riporto1==1){
                    somma=0;
                    riporto=1;
                  }
                  if(somma>1 && riporto1==1){
                    somma=1;
                    riporto=1;
                  }
                }
                    }
                }
                if(somma2==1 && riporto3==0){
                  somma2=1;
                  riporto2=0;
                  if(somma1==0 && riporto2==0){
                    somma1=0;
                    riporto1=0;
                       if(somma==0 && riporto1==0){
                        somma=0;
                        riporto=0;
                       }
                       if(somma==1 && riporto1==0){
                        somma=1;
                        riporto=0;
                        }
                        if(somma>1 && riporto1==0){
                        somma=0;
                        riporto=1;
                        }
                    }
                    if(somma1==1 && riporto2==0){
                      somma1=1;
                      riporto1=0;
                         if(somma==0 && riporto1==0){
                        somma=0;
                        riporto=0;
                       }
                       if(somma==1 && riporto1==0){
                        somma=1;
                        riporto=0;
                        }
                        if(somma>1 && riporto1==0){
                        somma=0;
                        riporto=1;
                        }
                    }
                    if(somma1>1 && riporto2==0){
                      somma1=0;
                      riporto1=1;
                      if(somma==0 && riporto1==1){
                  somma=1;
                  riporto=0;
                  }
                  if(somma==1 && riporto1==1){
                    somma=0;
                    riporto=1;
                  }
                  if(somma>1 && riporto1==1){
                    somma=1;
                    riporto=1;
                  }
                    }
                }
                if(somma2>1 && riporto3==0){
                  somma2=0;
                  riporto2=1;
                   if(somma1==0 && riporto2==1){
                  somma1=1;
                  riporto1=0;
                     if(somma==0 && riporto1==0){
                        somma=0;
                        riporto=0;
                       }
                       if(somma==1 && riporto1==0){
                        somma=1;
                        riporto=0;
                        }
                        if(somma>1 && riporto1==0){
                        somma=0;
                        riporto=1;
                        }
                }
                if(somma1==1 && riporto2==1){
                  somma1=0;
                  riporto1=1;
                  if(somma==0 && riporto1==1){
                  somma=1;
                  riporto=0;
                  }
                  if(somma==1 && riporto1==1){
                    somma=0;
                    riporto=1;
                  }
                  if(somma>1 && riporto1==1){
                    somma=1;
                    riporto=1;
                  }
                }
                if(somma1>1 && riporto2==1){
                  somma1=1;
                  riporto1=1;
                  if(somma==0 && riporto1==1){
                  somma=1;
                  riporto=0;
                  }
                  if(somma==1 && riporto1==1){
                    somma=0;
                    riporto=1;
                  }
                  if(somma>1 && riporto1==1){
                    somma=1;
                    riporto=1;
                  }
                }
                }
              }
              if(somma3>1){
                somma3=0;
                riporto3=1;
                if(somma2==0 && riporto3==1){
                  somma2=1;
                  riporto2=0;
                  if(somma1==0 && riporto2==0){
                    somma1=0;
                    riporto1=0;
                     if(somma==0 && riporto1==0){
                        somma=0;
                        riporto=0;
                       }
                       if(somma==1 && riporto1==0){
                        somma=1;
                        riporto=0;
                        }
                        if(somma>1 && riporto1==0){
                        somma=0;
                        riporto=1;
                        }
                    }
                    if(somma1==1 && riporto2==0){
                      somma1=1;
                      riporto1=0;
                       if(somma==0 && riporto1==0){
                        somma=0;
                        riporto=0;
                       }
                       if(somma==1 && riporto1==0){
                        somma=1;
                        riporto=0;
                        }
                        if(somma>1 && riporto1==0){
                        somma=0;
                        riporto=1;
                        }
                    }
                    if(somma1>1 && riporto2==0){
                      somma1=0;
                      riporto1=1;
                      if(somma==0 && riporto1==1){
                  somma=1;
                  riporto=0;
                  }
                  if(somma==1 && riporto1==1){
                    somma=0;
                    riporto=1;
                  }
                  if(somma>1 && riporto1==1){
                    somma=1;
                    riporto=1;
                  }
                    }
                }
                if(somma2==1 && riporto3==1){
                  somma2=0;
                  riporto2=1;
                   if(somma1==0 && riporto2==1){
                  somma1=1;
                  riporto1=0;
                     if(somma==0 && riporto1==0){
                        somma=0;
                        riporto=0;
                       }
                       if(somma==1 && riporto1==0){
                        somma=1;
                        riporto=0;
                        }
                        if(somma>1 && riporto1==0){
                        somma=0;
                        riporto=1;
                        }
                }
                if(somma1==1 && riporto2==1){
                  somma1=0;
                  riporto1=1;
                  if(somma==0 && riporto1==1){
                  somma=1;
                  riporto=0;
                  }
                  if(somma==1 && riporto1==1){
                    somma=0;
                    riporto=1;
                  }
                  if(somma>1 && riporto1==1){
                    somma=1;
                    riporto=1;
                  }
                }
                if(somma1>1 && riporto2==1){
                  somma1=1;
                  riporto1=1;
                  if(somma==0 && riporto1==1){
                  somma=1;
                  riporto=0;
                  }
                  if(somma==1 && riporto1==1){
                    somma=0;
                    riporto=1;
                  }
                  if(somma>1 && riporto1==1){
                    somma=1;
                    riporto=1;
                  }
                }
                }
                if(somma2>1 && riporto3==1){
                  somma2=1;
                  riporto2=1;
                   if(somma1==0 && riporto2==1){
                  somma1=1;
                  riporto1=0;
                     if(somma==0 && riporto1==0){
                        somma=0;
                        riporto=0;
                       }
                       if(somma==1 && riporto1==0){
                        somma=1;
                        riporto=0;
                        }
                        if(somma>1 && riporto1==0){
                        somma=0;
                        riporto=1;
                        }
                }
                if(somma1==1 && riporto2==1){
                  somma1=0;
                  riporto1=1;
                  if(somma==0 && riporto1==1){
                  somma=1;
                  riporto=0;
                  }
                  if(somma==1 && riporto1==1){
                    somma=0;
                    riporto=1;
                  }
                  if(somma>1 && riporto1==1){
                    somma=1;
                    riporto=1;
                  }
                }
                if(somma1>1 && riporto2==1){
                  somma1=1;
                  riporto1=1;
                  if(somma==0 && riporto1==1){
                  somma=1;
                  riporto=0;
                  }
                  if(somma==1 && riporto1==1){
                    somma=0;
                    riporto=1;
                  }
                  if(somma>1 && riporto1==1){
                    somma=1;
                    riporto=1;
                  }
                }
                }
              }
              printf("    %d%d%d%d -\n",a,a1,a2,a3);
              printf("    %d%d%d%d =\n",b,b1,b2,b3);
              printf("  ------------\n");
              printf("  [%d]%d%d%d%d\n",riporto,somma,somma1,somma2,somma3);
              printf("La cifra racchiusa tra parentesi è il RIPORTO: vale 1 se il numero e'\n");
              printf("POSITIVO, 0 se il numero e' NEGATIVO.\n");
              printf("\n*****************************************************************************\n\n");
             }
            printf("Vuoi convertire il risultato ottenuto?\n");
            printf("1] Sì.\n2] No.\n");
            printf("Hai scelto l'opzione n. ");
            scanf("%d",&y);
            printf("\n");
            if(y==1){
            printf("Quante cifre ha il numero che vuoi convertire? --> ");
            scanf("%d",&z);
            if(z==1){
              printf("Inserisci il num. binario che vuoi convertire in decimale.\n");
              printf("--> ");
              scanf("%d",&a);
              numa=a*pow(2,0);
              printf("Num. binario da convertire: %d\n",a);
              printf("Num. decimale convertito: %d\n",numa);
              printf("\n*****************************************************************************\n\n");
              }
            if(z==2){
              printf("Inserisci la cifra n.1:\n");
              printf("--> ");
              scanf("%d",&a);
              printf("Inserisci la cifra n.2:\n");
              printf("--> ");
              scanf("%d",&b);
              numa=a*pow(2,1);
              numb=b*pow(2,0);
              num=numa+numb;
              printf("Num. binario da convertire: %d%d\n",a,b);
              printf("Num. decimale convertito: %d\n",num);
              printf("\n*****************************************************************************\n\n");
              }
              if(z==3){
              printf("Inserisci la cifra n.1:\n");
              printf("--> ");
              scanf("%d",&a);
              printf("Inserisci la cifra n.2:\n");
              printf("--> ");
              scanf("%d",&b);
              printf("Inserisci la cifra n.3:\n");
              printf("--> ");
              scanf("%d",&c);
              numa=a*pow(2,2);
              numb=b*pow(2,1);
              numc=c*pow(2,0);
              num=numa+numb+numc;
              printf("Num. binario da convertire: %d%d%d\n",a,b,c);
              printf("Num. decimale convertito: %d\n",num);
              printf("\n*****************************************************************************\n\n");
              }
              if(z==4){
              printf("Inserisci la cifra n.1:\n");
              printf("--> ");
              scanf("%d",&a);
              printf("Inserisci la cifra n.2:\n");
              printf("--> ");
              scanf("%d",&b);
              printf("Inserisci la cifra n.3:\n");
              printf("--> ");
              scanf("%d",&c);
              printf("Inserisci la cifra n.4:\n");
              printf("--> ");
              scanf("%d",&d);
              numa=a*pow(2,3);
              numb=b*pow(2,2);
              numc=c*pow(2,1);
              numd=d*pow(2,0);
              num=numa+numb+numc+numd;
              printf("Num. binario da convertire: %d%d%d%d\n",a,b,c,d);
              printf("Num. decimale convertito: %d\n",num);
              printf("\n*****************************************************************************\n\n");
              }
              if(z==5){
              printf("Inserisci la cifra n.1:\n");
              printf("--> ");
              scanf("%d",&a);
              printf("Inserisci la cifra n.2:\n");
              printf("--> ");
              scanf("%d",&b);
              printf("Inserisci la cifra n.3:\n");
              printf("--> ");
              scanf("%d",&c);
              printf("Inserisci la cifra n.4:\n");
              printf("--> ");
              scanf("%d",&d);
              printf("Inserisci la cifra n.5:\n");
              printf("--> ");
              scanf("%d",&e);
              numa=a*pow(2,4);
              numb=b*pow(2,3);
              numc=c*pow(2,2);
              numd=d*pow(2,1);
              nume=e*pow(2,0);
              num=numa+numb+numc+numd+nume;
              printf("Num. binario da convertire: %d%d%d%d%d\n",a,b,c,d,e);
              printf("Num. decimale convertito: %d\n",num);
              printf("\n*****************************************************************************\n\n");
              }
              if(z==6){
              printf("Inserisci la cifra n.1:\n");
              printf("--> ");
              scanf("%d",&a);
              printf("Inserisci la cifra n.2:\n");
              printf("--> ");
              scanf("%d",&b);
              printf("Inserisci la cifra n.3:\n");
              printf("--> ");
              scanf("%d",&c);
              printf("Inserisci la cifra n.4:\n");
              printf("--> ");
              scanf("%d",&d);
              printf("Inserisci la cifra n.5:\n");
              printf("--> ");
              scanf("%d",&e);
              printf("Inserisci la cifra n.6:\n");
              printf("--> ");
              scanf("%d",&f);
              numa=a*pow(2,5);
              numb=b*pow(2,4);
              numc=c*pow(2,3);
              numd=d*pow(2,2);
              nume=e*pow(2,1);
              numf=f*pow(2,0);
              num=numa+numb+numc+numd+nume+numf;
              printf("Num. binario da convertire: %d%d%d%d%d%d\n",a,b,c,d,e,f);
              printf("Num. decimale convertito: %d\n",num);
              printf("\n*****************************************************************************\n\n");
              }
              if(z==7){
              printf("Inserisci la cifra n.1:\n");
              printf("--> ");
              scanf("%d",&a);
              printf("Inserisci la cifra n.2:\n");
              printf("--> ");
              scanf("%d",&b);
              printf("Inserisci la cifra n.3:\n");
              printf("--> ");
              scanf("%d",&c);
              printf("Inserisci la cifra n.4:\n");
              printf("--> ");
              scanf("%d",&d);
              printf("Inserisci la cifra n.5:\n");
              printf("--> ");
              scanf("%d",&e);
              printf("Inserisci la cifra n.6:\n");
              printf("--> ");
              scanf("%d",&f);
              printf("Inserisci la cifra n.7:\n");
              printf("--> ");
              scanf("%d",&g);
              numa=a*pow(2,6);
              numb=b*pow(2,5);
              numc=c*pow(2,4);
              numd=d*pow(2,3);
              nume=e*pow(2,2);
              numf=f*pow(2,1);
              numg=g*pow(2,0);
              num=numa+numb+numc+numd+nume+numf+numg;
              printf("Num. binario da convertire: %d%d%d%d%d%d%d\n",a,b,c,d,e,f,g);
              printf("Num. decimale convertito: %d\n",num);
              printf("\n*****************************************************************************\n\n");
              }
              if(z==8){
              printf("Inserisci la cifra n.1:\n");
              printf("--> ");
              scanf("%d",&a);
              printf("Inserisci la cifra n.2:\n");
              printf("--> ");
              scanf("%d",&b);
              printf("Inserisci la cifra n.3:\n");
              printf("--> ");
              scanf("%d",&c);
              printf("Inserisci la cifra n.4:\n");
              printf("--> ");
              scanf("%d",&d);
              printf("Inserisci la cifra n.5:\n");
              printf("--> ");
              scanf("%d",&e);
              printf("Inserisci la cifra n.6:\n");
              printf("--> ");
              scanf("%d",&f);
              printf("Inserisci la cifra n.7:\n");
              printf("--> ");
              scanf("%d",&g);
              printf("Inserisci la cifra n.8:\n");
              printf("--> ");
              scanf("%d",&h);
              numa=a*pow(2,7);
              numb=b*pow(2,6);
              numc=c*pow(2,5);
              numd=d*pow(2,4);
              nume=e*pow(2,3);
              numf=f*pow(2,2);
              numg=g*pow(2,1);
              numh=h*pow(2,0);
              num=numa+numb+numc+numd+nume+numf+numg+numh;
              printf("Num. binario da convertire: %d%d%d%d%d%d%d%d\n",a,b,c,d,e,f,g,h);
              printf("Num. decimale convertito: %d\n",num);
              printf("\n*****************************************************************************\n\n");
              }
            }
            else{
              exit(0);
              printf("\n*****************************************************************************\n\n");
            }
            
            break;
          case 5: 
            printf("\n*****************************************************************************\n\n");
            printf("Hai scelto di visualizzare le ISTRUZIONI dettagliate per il corretto utilizzo\n");
            printf("del programma BINARY CODE.\n\n");
            printf("BINARY CODE consente a chi lo utilizza di compiere conversioni ed effettuare ope-\n");
            printf("razioni con i numeri binari. In questa versione del software vengono trattati ed\n");
            printf("utilizzati numeri binari di massimo 8 cifre, rifacendosi allo standard che vuole\n");
            printf("definire un BYTE come successione di 8 BIT (BInary digiT), ovvero di 8 cifre bina-\n");
            printf("rie. Rifacendosi alla suddetta definizione, scegliamo di trattare numeri binari non\n");
            printf("superiori alle 8 cifre; ciò non implica che non possano esistere numeri binari com-\n");
            printf("posti da 9 o più cifre binarie.\n");
            printf("I numeri binari (o in base 2) costituiscono una differente rappresentazione della\n");
            printf("più consueta successione decimale; largamente utilizzati nell'architettura dei cal-\n");
            printf("colatori, la numerazione binaria costituisce un interessante spunto per lo studio e\n");
            printf("la comprensione delle fondamenta dell'informatica moderna.\n");
            printf("\n");


            printf("1] convertire un num. DECIMALI in un num. BINARI :: Viene richiesto l'in-\n");
            printf("serimento di un numero intero in base 10 per ottenere subito di seguito il suo\n");
            printf("equivalente convertito in base 2.\n\n");
            printf("2] convertire un num. BINARI in un num. DECIMALI :: L'operazione consente\n");
            printf("di invertire la precedente conversione inserendo dapprima il NUMERO delle cifre\n");
            printf("che compongono il num. in base 2 da convertire, poi comunicando al programma una \n");
            printf("per una ogni singola CIFRA del numero da convertire, come espressamente richiesto.\n");
            printf("Di seguito verra' quindi ricordato il numero comunicato ed il suo equivalente in\n");
            printf("base 10 convertito.\n\n");
            printf("3] sommare due numeri binari (di medesima lunghezza) :: E' necessario comunica-\n");
            printf("re al programma la lunghezza delle cifre binarie che si vuole sommare. In seguito\n");
            printf("è possibile inserire cifra per cifra i due addendi da sommare che, in virtu' della\n");
            printf("proprieta' commutativa dell'addizione, possono essere inseriti in ordine casuale. \n");
            printf("Infine i due addendi inseriti verranno ricordati ed ad essi seguira' immediatamente \n");
            printf("il risultato dell'operazione. Purtroppo per ora e' possibile operare con addendi \n");
            printf("non più lunghi di 4 cifre.\n\n");
            printf("4] sottrarre due numeri binari (di medesima lunghezza) :: E' necessario comunica-\n");
            printf("re al programma la lunghezza delle cifre binarie che si vuole elaborare. In seguito\n");
            printf("è possibile inserire cifra per cifra i due termini da sottrarre l'uno all'altro.\n");
            printf("Infine i due termini inseriti verranno ricordati ed ad essi seguira' immediatamente \n");
            printf("il risultato dell'operazione. Purtroppo per ora e' possibile operare con termini \n");
            printf("non più lunghi di 4 cifre.\n\n");
            printf("\n*****************************************************************************\n\n");
            break;
	  case 6:
                        printf("\n****************CREDITS****************\n");
                        printf("---------------------------------------\n");
                        printf("| Ha lavorato al progetto:            |\n");
                        printf("| - FARINELLI AGNESE                  |\n");
                        printf("| In data:                            |\n");
                        printf("| - 7 Dicembre 2008                   |\n");    
                        printf("| Per il seguente motivo:             |\n");
                        printf("| - Incapacità di effettuare con-     |\n");
                        printf("| versioni e conti in cod. binario.   |\n");
                        printf("|                                     |\n");
                        printf("| *  COPYRIGHT OF FARINELLI AGNESE  * |\n");
                        printf("|                                     |\n");
                        printf("| L'esperienza accumulata ideando il  |\n");
                        printf("| programma BINARY CODE mi ha consen- |\n");
                        printf("| tito di superare l'esame di PROGRAM-|\n");
                        printf("| MAZIONE con il punteggio di 28/30.  |\n");
                        printf("---------------------------------------\n\n");
            break;
          case 7: 
            printf("\nGrazie per aver scelto BINARY CODE.\n");
            printf("\n*****************************************************************************\n\n");
            break;
  }

}

//FUNZIONE che converte un num. in base 10 in un num. in base 2
int converter_base10_base2(int a)
{
  int div,resto;
  int b[100], i=0, j=0;

  if(a==0){
    resto=0;
    printf("%d",resto);
  }
  else{
    for(i=0;a>0;i++){
      div=a/2;
      resto=a-(div*2);
      b[i]=resto;
      a=div;
    } 
    for(i=i-1;i>=0;i--){
      printf("%d",b[i]);
    }
  }
}

