Me podran ayudar con el siguiente programa que deberia eliminar el numero 3

Iniciado por neoliner, 1 Mayo 2015, 01:49 AM

0 Miembros y 1 Visitante están viendo este tema.

neoliner

Necesito que el case 4 elimine el numero 3 no se que pueda estar mal en mi codigo ...
Código (cpp) [Seleccionar]
#include <iostream>
#include <conio.h>
#include <cstdlib>
#include <stdlib.h>
using namespace std;
int main()
{ int i,n,j,A[50],aux;
int opcion ;

do {
fflush (stdin);
cout<<endl<<"1.Capturar numeros"<<endl;
   cout<<"2.Ordena series"<<endl;
   cout<<"3.Elimina duplicados"<<endl;
   cout<<"4.Elimina numeros que tengan digito 3"<<endl;
   cout<<"5.Mostrar series"<<endl;
   cout<<"6.Salir"<<endl;
   cin>>opcion;
   switch (opcion) {
case 1:
//TAMAÑO ARREGLO
{
cout<<"Introduzca la Cantidad de Numeros: ";
cin>>n;

//LLENA EL ARREGLO
for( i=0; i<n; i++)
{
cout<<"Ingrese el Numero "<<i+1<<" :";
cin>>A[i];
} }
           break;
       case 2:
        //DATOS ORDENADOS
for( i=0; i<n; i++)
{
for(j=i+1; j<n; j++)
{
if(A[i]>A[j])
{
aux=A[j];
A[j]=A[i];
A[i]=aux;
}
}
} break;
case 3:
//ELIMINA REPETIDOS
for( i=0; i<n; i++)
{
for(j=i+1; j < n; j++)
{
if(A[i]==A[j])
{
for(int k=j; k<n-1; k++)
{
A[k] = A[k+1];
}
n--;
i--; //Necesario dar una vuelta atras
}
}
} break;
case 4:
//ELIMINAR NUMEROS QUE TENGAN DIGITO 3
for( i = 0 ; i < n; i++)
{
if(A[i]/10 || A[i] == 3)
{
for(int j=i ; j < n - 1; j++)
{
A[j] = A[j+1];
}
i--;
n--;
}
}
break;
case 5:
//MOSTRAR DATOS
for( i = 0 ; i < n; i++){
cout<<A[i]<<endl;
system("pause");
}
case 6:
 //SALIR
break;

cout<<"Salir";
break;
}  
}
while (!(opcion== 6));
return 0;
}



GRACIAS....

Mod: los códigos deben ir en etiqueta GeSHi y no debes hacer doble post