Salve gente, saro' molto grato a chi riuscira' a darmi una mano , nel mio programma dovrei costruire un controllo di tipo variabili in ingresso per riuscire a farlo funzionare sia con i numeri che con le lettere. qualcuno è in grado di farlo???
ho riportato il mio programma funzionante, dategli anche un'occhiata se vi va cosi' mi fate sapere cosa ne pensate.

#include<iostream>
#include<stdio.h>
typedef int vettore[100];
using namespace std;
int v[100], w[100];
int leggi (int dimensione);
int scrivi(vettore vet,int dimensione);
int controlla (vettore vet, int dimensione);
int elimina (vettore vet, int dimensione);
int ordina (vettore vet, int dimensione);

int main(){
system("COLOR A1");
char scelta;
//parte introduttiva al programma
cout<<"\t\tUNIVERSITA' DEGLI STUDI FEDERICO II- a.a. 2007/08";
cout<<"\n\n\tCORSO DI INGEGNERIA MECCANICA. ESAME DI ELEMENTI DI INFORMATICA \n";
cout<<"\t\t\t\t -Prova num.15-";
cout<<"\n\nProfessore: GIOVANNI SECONDULFO. ";
cout<<"\nStudente: VAIRO FILIPPO MARIA (matr:535/2112).\n";
cout<<"\n\n\t\t\tINIZIO PROGRAMMA:\n\n";
system("pause");
do{
int dim;
bool k;
system ("cls");
cout<<"Inserire la dimensione del vettore desiderato:";
cin>>dim;
cout<<endl;
leggi(dim);//chiamata al sottoprogramma che permette di inserire le componenti vettoriali
cout<<endl;
cout<<"il vettore inserito e':\n\t";
scrivi(v,dim);//chiamata al sott.prog. che scrive il vettore desiderato dall'utente
cout<<endl;
k=controlla(v,dim);//chiamata al sott.prog. che verifica l'esistenza di elementi doppi
if(k)elimina(v,dim);//chiamata al sott.prog che elimina le componenti doppie
else ordina(v,dim);//non ci sono componenti doppie,chiamata al sott.prog
//che ordina le componenti in ordine decrescente
cout<<"\n\nRipetere operazione?(s/n)";//possibilita' di ripetere l'operazione
cin>>scelta;
}while(scelta=='s');
return 0;
}
// sottoprogramma leggi
int leggi (int dimensione){
for (int i=0;i<dimensione;i++){
cout<<" inserire la componente numero "<<i+1<<" (max 10 cifre):";
cin>>v[i];}}
//sottoprogramma scrivi
int scrivi(vettore vet,int dimensione){
cout<<"( ";
for(int i=0;i<dimensione;i++)cout<<vet[i]<<" ";
cout<<")";}
//sottoprogramma controlla
int controlla (vettore vet, int dimensione){
int alfa;
alfa=0;
for(int i=0;i<dimensione-1;i++){
if (vet[i]==vet[i+1]){
alfa=1;
cout<<"\n\t- Attenzione, esistono elementi doppi! - \a\n\n";
break;}}
return alfa;}
//sottoprogramma elimina
int elimina (vettore vet, int dimensione){
int p=-1;
for (int i=0;i<dimensione;i++){
if (vet[i]==vet[i+1]){
i++;}
else if (vet[i]!=vet[i+1]){
p++;
w[p]=vet[i];
}}
cout<<"il vettore privo degli elementi doppi e':\n\n\t";
p++;
scrivi(w,p);}
//sottoprogramma ordina
int ordina (vettore vet, int dimensione){
int scambio;
for(int i=0;i<dimensione;i++){
for(int j=dimensione;j>i;j--){
if(vet[j-1]<vet[j]){
scambio=vet[j-1];
vet[j-1]=vet[j];
vet[j]=scambio;}}}
cout<<"\n\nil vettore finale V1 ordinato e':\n\t";
scrivi(vet,dimensione);}