HOLA A TODOS, BUENO EL PROBLEMA QUE TENGO Y ESPERANDO PUEDAN AYUDARME
ES QUE HE REALIZADO EL SIGUIENTE CODIGO, QUE CORRE PERFECTAMENTE, PERO LO QUE QUIERO ES QUE BUSQUE UN ELEMENTO EN EL VECTOR Y DESPUES DE ENCONTRARLO,EL ELEMENTO QUE LE SIGUE (ATRAS) PUEDA BORRARLO O CONVERTIRLO A CERO, LO UNICO QUE HE LOGRADO ES QUE ENCUENTRE EL ELEMENTO DE ACUERDO A SU POSICION Y LE ASIGNE CERO. PERO COMO YA HABIA MENCIONADO NECESITO QUE BORRE EL ANTERIOR POR EJEMPLO,
2,3,4 Y SI QUIERO BORRAR EL DE LA POSICION 2 OBTENGO
2,0,4 Y LO QUE QUIERO ES 2,3,0 BORRE UNA POSICION ATRAS.
BORRAR NO SE SI SE PUEDA, HE LEIDO QUE COMO ES MEMORIA ESTATICA NO SE PUEDE PERO SERIA MEJOR, PERO SI EN SU CASO LA SOLUCION SOLO ES PONERLE CERO ME CONFORMO. BUENO ESPERO Y PUEDAN AYUDARME. A LO MEJOR Y ES ALGO COMO CAMBIARLE UN INDICE NADAMAS PERO YA HE INTENTADO DE TODO Y NO ME SALE. EL CONDIGO ES EL SIGUIENTE.
EL PROGRAMA ESTA HECHO EN DEV-C++
#include<iostream.h>
#include<conio.h>
#include<stdio.h>
#include<string.h>
int main()
{ int i,n,a[50]={0},resp,no,nuevo=0,pos=0,opcion,borr,z;
do{
cout<<endl;
cout<<"Cuantos elementos deseas ingresar ";
cin>>n;
cout<<endl;
for(i=1;i<=n;i++)
{
cout<<"ingresa "<<i<<": ";
cin>>a[i];
}
cout<<endl;
cout<<"La lista queda como"<<endl<<endl;
for(i=1;i<=n;i++)
{
cout<<a[i]<<",";
}
cout<<endl<<endl;
cout<<"___Deseas BORRAR un valor a la lista___"<<endl;
cout<< " Ingresa *1* para___si o *2* para _no_"<<endl<<endl;
cin>>resp;
if(resp==1)
{
do{
cout<<"inserta el numero que su parte posterior sera borrado( o atras) ";
cin>>borr;
for(i=0;i<n;i++)
{
if(borr==a[i])
a[i]=0;
}
for(i=1;i<=n;i++)
{
cout<<a[i];
}
}while(pos>n);
}
else {
cout<<"";
}
getch();
system("cls");
cout<<endl<<endl;
cout<<"Deseas realizar nuevamente la operacion con otros valores"<<endl;
cout<<endl;
cout<<"Ingresa *1* para --si-- o *2* para --no-- ";
cin>>opcion;
}while(opcion==1);
getch();
}