passaggio da numero binario a numero in base 10

il programma deve

gestire l'inserimento di numeri in base 2 quindi controllare se il numero in base 2 è composto solo dalle cifre zero e uno
scrivere il numero inserito in modo da controllare l'esattezza
scrivere il numero in base 10

esempio:

voglio trasformare 110101 in base 10

un possibile dialogo con la macchina è il seguente:

    inserisci un numero in base 2 (digita invio dopo ogni cifra) inizio la digitazione.

   il numero digitato è 110111 va bene? (s = vado avanti, altro tasto ricomincia) rifaccio la digitazione

   il numero digitato è 110101 va bene? (s = vado avanti, altro tasto ricomincia) digito s

   il numero binario 110101 è 53 in base 10

obiettivi da raggiungere:

saper usare strutture di controllo per controllare se il numero che entra è composto solo da zero o da uno  e per controllare se il numero digitato è quello corretto
saper caricare un ARRAY e saperlo stampare
saper contare gli elementi di un array (o quanti ne sono stati inseriti)
saper calcolare le potenze di due attraverso ciclo for...