sábado, 5 de octubre de 2013

Vectores en C++: Inserción, Modificación, Eliminación




Elaborar un programa c++ que implemente el siguiente menú:
      [1] Mostrar el vector
      [2] Insertar elemento
      [3] Eliminar elemento
      [4] Buscar elemento
      [5] Ordenar vector
      [6] Salir

Link a la sesión de clase: https://docs.google.com/file/d/0BzVoFK1Jg_UZSlozWGUzUjdvdGs/edit?usp=sharing

Compartan entre Uds. opiniones e inclusive su código para que puedan solucionar este problema

#include <iostream>
using namespace std;
int menu();
void mostrarV(int v[],int n);
void insertaPos(int v[], int n, int num, int pos);
int main(int argc, char *argv[]) {
       int opcion =0;
       int v[100];
       int n = 0;
       do{
             opcion = menu();
             switch(opcion){
             case 1:
                    mostrarV(v,n);
                    break;
             case 2:
                    cout<<"elemento a insertar: ";
                    int temp;
                    cin>>temp;
                    cout<<"posicion: ";
                    int pos;
                    cin>>pos;
                    insertaPos(v,n,temp,pos);
                    break;
             case 3:
                    break;
             case 4:
                    break;
             case 5:
                    break;
             case 6:
                    cout<<"fin del programa"<<endl;
                    break;
             default:
                    cout<<"opcion no valida"<<endl;
             }
       }while(opcion != 6);
      
       return 0;
}
void insertaPos(int v[], int n, int num, int pos){
       if(pos<n && pos>0){
             for(int i=n; i>pos-1;i--){
                    v[i]=v[i-1];
             }
             v[pos-1] = num;
       }else{
             cout<<"posicion fuera de rango";
       }
}
void mostrarV(int v[],int n){
       cout<<endl;
       for(int i=0;i<n;i++){
             cout<<v[i]<<"\t";
       }
       cout<<endl;
}
int menu(){
       cout<<"[1] Mostrar el vector"<<endl;
       cout<<"[2] Insertar elemento"<<endl;
       cout<<"[3] Eliminar elemento"<<endl;
       cout<<"[4] Buscar elemento"<<endl;
       cout<<"[5] Ordenar vector"<<endl;
       cout<<"[6] Salir"<<endl;
       cout<<"Opcion: ";
       int opcion;
       cin>>opcion;
       return opcion;
}

 

2 comentarios:

  1. Hay un ERROR el cual he corregido en mi código puesto que no se puede insertar elementos ya que el vector no está declarado y aparte no muestra el vector...
    Ademas después de la primera ejecución ya no se mostraba la primera parte del Menú

    ResponderBorrar
  2. #include
    using namespace std;
    int menu();
    void mostrarV (int v[], int a);
    void insertarPos(int v[],int &a,int temp,int pos);
    void eliminarV (int v[], int &a, int po);
    void buscarV (int v[], int a);
    void ordenarV (int v[], int a);
    int main(int argc, char *argv[]) {
    int opc =0;
    int v[100];
    int a=0;
    do{
    opc = menu();
    switch (opc){
    case 1:
    mostrarV(v,a);
    cout<>temp;
    cout<<"posicion a insertar: ";
    int pos;
    cin>>pos;
    insertarPos(v,a,temp,pos);
    break;
    case 3:
    cout<>po;
    po=po-1;
    eliminarV(v,a,po);
    cout<>opc;
    cout<0) {
    for (int i=a;i>pos-1;i--){
    v[i]=v[i-1];
    }
    v[pos-1]=temp;
    a++;
    }else{
    cout<<"POsicion fuera de rango"<=0){
    for (int i=po;i>c;
    for(int i=0; iv[j+1])
    {
    int temp=v[j];
    v[j]=v[j+1];
    v[j+1]=temp;
    }

    }
    }
    mostrarV(v,a);
    }

    ResponderBorrar