Dev - C++ - Vector de elementos variables sin especificar cantidad

 
Vista:
sin imagen de perfil
Val: 7
Ha disminuido su posición en 2 puestos en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Vector de elementos variables sin especificar cantidad

Publicado por Pedro (3 intervenciones) el 04/10/2019 19:54:49
La pregunta es como puedo introducir los elementos del vector SIN ESPECIFICAR PREVIAMENTE la cantidad de elementos que deba contener. Al ejecutarse el programa me pida directamente los números y sin yo especificarle si quiero introducir más o no, simplemente darle al enter y que estén guardados los elementos dentro del vector.

El tipo de vector sería: int vector[100]={0}
y el programa se ejecuta pidiendo una cantidad variable elementos que quiero que se guarde en el vector (puede que no introduzca ningún elemento o que introduzca 100 por ejemplo)

Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alfil
Val: 4.344
Oro
Ha mantenido su posición en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Vector de n numeros sin especificar cantidad de constantes

Publicado por Alfil (1444 intervenciones) el 04/10/2019 19:59:54
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
 
using namespace std;
 
int main()
{
    int N;
 
    cout << "\nNumero de elementos a guardar: ";
    cin >> N;
 
    int arr[N];
 
    return 0;
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 7
Ha disminuido su posición en 2 puestos en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Vector de n numeros sin especificar cantidad de constantes

Publicado por Pedro (3 intervenciones) el 04/10/2019 20:09:46
Me había explicado un poco mal, perdona y gracias por constentar igualmente. Era otra cosa lo que necesitaba.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Alfil
Val: 4.344
Oro
Ha mantenido su posición en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Vector de n numeros sin especificar cantidad de constantes

Publicado por Alfil (1444 intervenciones) el 04/10/2019 20:31:05
¿Y que es lo que necesitas?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 7
Ha disminuido su posición en 2 puestos en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Vector de n numeros sin especificar cantidad de constantes

Publicado por Pedro (3 intervenciones) el 04/10/2019 20:43:17
Había modificado el post, ahora creo que queda más claro, aunque me he tenido que dar prisa y puede que no quede claro aún:

Se trata que al ejecutar el programa puede introducir directamente los elementos del vector sin tener que especificar la cantidad de elementos que contendrá el mismo ni que el programa me pregunte si quiero seguir poniendo elementos.

por ejemplo :

se ejecuta e introduzco 12 2 31 le doy al enter y el vector me queda así: V[100]={12,2,31,0,0,0......0
si introduzco 1 2 3 4 5 6 que el vector me quede así V[100]={1,2,3,4,5,6,0......0


Gracias!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Alfil
Val: 4.344
Oro
Ha mantenido su posición en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Vector de n numeros sin especificar cantidad de constantes

Publicado por Alfil (1444 intervenciones) el 04/10/2019 21:27:29
Se podría hacer algo así, solo debes decidir como terminar el bucle, en este caso termina al escribir un punto o cualquier otro caraccter no numérico

No obstante sería más natural utilizar la biblioteca Vector, ya que ahorraría memoria y no tendría límite de elementos más allá de la propia memoria del PC.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#include <iostream>
#include <cctype>
 
using namespace std;
 
int main()
{
    int arr[100] = { 0 };
    int j = 0;
    char a;
 
    cout << "\nIntroduce numeros (escribe un punto para terminar .): ";
 
    do{
        cin >> a;
        if( isdigit( a ) )
            arr[j] = a - 48;
        else
            break;
        j++;
 
    }while( !ispunct( a ) );
 
    cout << endl;
 
    for( int i = 0; i < 100; i++ ){
        cout << arr[i] << " ";
    }
 
    cout << endl;
 
    return 0;
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 417
Ha mantenido su posición en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Vector de elementos variables sin especificar cantidad

Publicado por Thanatos (199 intervenciones) el 05/10/2019 00:13:50
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#include <cstddef>   // size_t
#include <iostream>  // cout, cin
#include <sstream>   // stringstream
#include <string>    // string, getline()
 
using namespace std;
 
int main() {
    const size_t kSize = 100;
    int numeros[kSize] = { };
 
    string entrada;
    getline(cin, entrada);
 
    stringstream ss(entrada);
 
    size_t i = 0;
    while (i < kSize) {
        int numero;
        ss >> numero;
 
        if (ss.fail()) {
            ss.clear();
            break;
        }
        numeros[i] = numero;
        ++i;
    }
 
    for (size_t j = 0; j < kSize; ++j) {
        cout << numeros[j] << "  ";
    }
    cout << '\n';
 
    return 0;
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar