Dev - C++ - vectores

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

vectores

Publicado por Cesar Arteaga (2 intervenciones) el 03/09/2019 00:10:35
alguien podria ayudarme ya tengo gran parte de la estructura solo que no se como hacer para que me clcule cual es la suma que aquivale...ayuda

Deberás escribir un programa que defina un vector de números (5), y calcule si existe algún numero en el vector cuyo valor equivale a la suma del resto de números del vector.

Ejemplo

Si tu vector tiene los siguientes datos

1,2,3,4,10

Tu programa deberá mostrar en pantalla

El numero X equivale a la suma de los demás

En este caso X=10

En caso contrario deberá decir

No existe ningún número que sea igual a la suma de los demás
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++

vectores

Publicado por Alfil (1444 intervenciones) el 03/09/2019 06:27:09
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
#include <iostream>
 
using namespace std;
 
int main()
{
    int suma;
    int pos = -1;
    int v[5];
 
    cout << "\nIntroduzca 5 numeros enteros: ";
    for( int i = 0; i < 5; i++ )
        cin >> v[i];
 
    for( int j = 0; j < 5; j++ ) {
            suma = 0;
        for( int k = 0; k < 5; k++ ) {
            if( j != k )
                suma += v[k];
        }
        if( v[j] == suma )
            pos = j;
    }
 
    if( pos != -1 )
        cout << "\nEl numero " << v[pos] << " equivale a la suma de los demas";
    else
        cout << "\nNo existe ningun numero que equivale a la suma de los demas";
 
    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
1
Comentar
sin imagen de perfil
Val: 3
Ha disminuido su posición en 6 puestos en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

vectores

Publicado por Cesar Arteaga (2 intervenciones) el 03/09/2019 07:01:17
gracias por el aporte, comparare mi trabajo
al parecer aun tengomucho por aprender dado aque soy principiante, agradesco gratamente y comparto mi trabajo, acepto comentarios y sugerencias, aunque con su aporte he tomado varios tips de mejoramiento.saludos
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
37
38
39
40
41
42
43
44
45
46
#include <cstdlib>
#include <iostream>
 
using namespace std;
 
int main()
{
    //PARA BUSCAR UN NUMERO EN UN ARREGLO DE 5 NUMEROS:
 
   	int suma;							//para sumar los numeros anteriores 
    int num[5];							 //declaro el arreglo de tipo entero
    int mayor=0;						//valor buscar
    int x;								//variale para resatar el valor mayor
 
    									//procedo a leer el arreglo y a ingresar numeros
    for(int i=0; i<5; i++){
        cout<<"Ingrese los numero del arreglo : ";
        cin>>num[i];
 
 
    									//ahora ingreso el numero a buscar en el arreglo
   	if(num[i] > mayor){					// la condicional IF de ir adentro del arreglo FOR 
		mayor=num[i];
 
	}
}
cout<< "\n el mayor elemento de la lista ingresada es "<<mayor<<endl<<endl;		//imprime mayor de los numeros 	
 
for(int i=0;i<5;i++){
		suma+=num[i];														//suma todos los numeros del arreglo
		x=suma-mayor;														//USAR VARIABLE PARA RESTAR SUMA MENOS NUMERO MAYOR
	}
		cout<<"\n las suma de los numeros anteriores menos el mayor es : "<<x;			//RESULTADO
 
																						//CONDICIONAL IF
if(x==mayor){
	cout<<"\n El numero _"<<mayor<<"_ equivale a la suma de los demas numeros"<<endl;
}
else {
 
	cout<<"\n No existe ningun numero que sea igual a la suma de los demas"<<endl;
 
}
    system("PAUSE");																	//PAUSAR PANTALLA
    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: 338
Ha mantenido su posición en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

vectores

Publicado por Martín (158 intervenciones) el 04/09/2019 00:19:15
Creo que ya lo tienes, pero como curiosidad, por si estuvieras interesado en C++ moderno (C++17), va un ejemplo de cómo podría hacerse:

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
#include <vector>
#include <iostream>
#include <numeric>
#include <optional>
 
std::optional<int> esSuma(const std::vector<int>& v)
{
    // si alguno de los números (x) es la suma de los otros
    // debe ser: x = suma / 2
 
    int suma = std::accumulate(v.begin(), v.end(), 0);
    for (const auto& n : v) {
        if (n == suma / 2) {
            return n;
        }
    }
    return std::nullopt;
}
 
int main()
{
    int num;
    std::vector<int> v;
 
    // pone todos los números ingresados en el vector v:
    std::cout << "numeros: ";
    while (std::cin >> num) {  // Ctrl+Z para terminar
        v.push_back(num);
    }
 
    if (auto a = esSuma(v))
        std::cout << *a << " es la suma de los otros.\n";
    else
        std::cout << "ninguno es la suma de los otros.\n";
}

Martín
Profe de C++
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