Hola acabo de empezar a usar un poco el lenguaje C++, asi que no estoy muy puesta. Tengo que hacer una practica de vectores, con una funcion tipo menu, y en cada opcion, que haga algo, bien que muestre el vector, bien que inserte un elemento, etc, mi pregunta es que en el switch, que viene adjunto, en cada case, yo puedo crear una funcion para cada case?. Es decir, una que muestre el tamaño del vector, otra que muestre el primer elemento, lo mismo que tengo puesto en cada case, pero haciendo una funcion aparte?. Es que no sé como hacerlo.
Aqui muestro el codigo de la práctica.
[CODE]
/*Practica de vectores*/
#include <iostream>
#include <vector> // necesario para el contenedor vector
#include <cstdlib> //necesario para rand() y srand()
using namespace std;
int main(void)
{
vector <int> v(6);
int d1, d2;
int b;
int num;
int pos;
int bor;
char op;
int opc;
do{
cout <<"*******Practica de vectores******\n" ;
cout <<" 1. Introducir datos en el vector.\n";
cout <<" 2. Mostrar el vector.\n";
cout <<" 3 Mostrar el tamaño del vector.\n";
cout <<" 4. Mostrar el primer elemento del vector.\n";
cout <<" 5. Mostrar el ultimo elemento del vector.\n";
cout <<" 6. Añadir elementos al final del vector.\n";
cout <<" 7. Invertir el vector\n";
cout <<" 8. Ordenar el vector.\n";
cout <<" 9. BUscar un elemento en el vector\n";
cout <<" 10. INsertar un elemento en el vector.\n";
cout <<" 11. Borrar el primer elemento del vector.\n";
cout <<" 12. Borrar el ultimo elemento del vector.\n";
cout <<" 13. Borrar un elemento cualquiera del vector.\n";
cout <<" 14. Borrar el vector.\n";
cout <<" Elija una opcion.\n";
cin >> opc;
switch(opc){
case 1: for (int i=0 ; i<v.size() ; i++) {
cout << "Introduce un valor real ";
cin >> v
;
cout << endl;
}
break;
case 2:
for (int i=0 ; i<v.size() ; i++) cout << v << " ";
cout << endl;
break;
case 3: cout << "El tamaño del vector es = " << v.size() << endl;
cout << endl;
break;
case 4: cout << "El primer elemento = " << v.front() << " o bien "<< *(v.begin()) << endl;
cout << endl;
break;
case 5: cout << "El Ultimo elemento = " << v.back() << " o bien "<< *(v.end()-1) << endl;
cout << endl;
break;
case 6: cout << "Insertamos al final del vector el elemento: ";
cin >> d1;
v.push_back(d1);
cout << " y el " ;
cin >> d2;
cout << endl;
v.push_back(d2);
cout << endl;
cout << "Ahora el vector es: ";
for (int i=0 ; i<v.size() ; i++) cout << v << " ";
cout << endl;
cout << endl;
break;
case 7: for (vector<int>::iterator it = v.begin(); it!=v.end(); ++it)
cout << *it << " ";
cout << endl;
reverse(v.begin(),v.end());
cout << "EL vector invertido es: ";
cout << endl;
cout << endl;
for (int i=0 ; i<v.size() ; i++) cout << v << " ";
cout << endl;
break;
case 8: sort(v.begin(),v.end());
cout << "EL vector ordenado es: ";
for (int i=0 ; i<v.size() ; i++) cout << v << " ";
cout << endl;
cout << endl;
break;
case 9: cout << "Busqueda: Introduce entero a buscar ";
cin >> b;
cout << endl;
if (find(v.begin(),v.end(),B)==v.end()) cout << b <<" no encontrado\n";
else cout << b <<" encontrado\n";
break;
case 10: cout << "Insertemos el ";
cin >> num;
cout << endl;
cout << "en la posicion ";
cin >> pos;
cout << endl;
cout << endl;
v.insert(v.begin() + pos, num);
for (int i=0 ; i<v.size() ; i++) cout << v << " ";
cout << endl;
cout << endl;
break;
case 11: cout << "Borramos el primer elemento: ";
cout << endl;
v.erase(v.begin() + 0);
for (int i=0 ; i<v.size() ; i++) cout << v << " ";
cout << endl;
cout << "Tam = " << v.size() << endl;
cout << endl;
break;
case 12: cout << "Borramos el ultimo elemento: ";
cout << endl;
v.pop_back(); //borra el ultimo elemento del vector
break;
case 13:
break;
case 14:
break;
default: cout << "Error salir del programa\n";
}
cout <<" DEsea continuar?\n";
cin >> op;
}while(op!= 's' || op != 'S');
}
Insisto yo lo que quiero es que me digan como puedo hacer una función para cada case del programa.
Gracias, ruego respondan lo antes posible.