Seguimos buscando a Arshak. Ayudanos compartiendo!
Encuesta no oficial de docentes
Resultados de la encuesta no oficial de docentes
Probaste el SIGA Helper?

Donar $100 Donar $200 Donar $500 Donar mensualmente


Enviar respuesta 
 
Calificación:
  • 0 votos - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Buscar en el tema
[AYUDA] Ejercicio 21 Algoritmos y Estructura de datos
Autor Mensaje
s3bas9721 Sin conexión
Empleado del buffet
Sin estado :|
*

Ing. en Sistemas
-----

Mensajes: 4
Agradecimientos dados: 0
Agradecimientos: 1 en 1 posts
Registro en: Aug 2018
Mensaje: #1
[AYUDA] Ejercicio 21 Algoritmos y Estructura de datos Otro Algoritmos y Estructuras de Datos
Hola, el ejercicio dice: "Dados N valores informar el mayor, el menor y en que posición del conjunto fueron ingresados." y mi problema es con la posición del menor, si me pudiesen ayudar con esto se los agradecería!

Mi código es:

#include <iostream>

using namespace std;

int main()
{
int mayor, menor, nvalores, valores, posmayor, posmenor;
mayor =0;
menor = 0;
cout << "Cuantos valores va a ingresar: ";
cin >> nvalores;

for(int i=1;i<=nvalores;i++)
{
cout << "Ingrese valor: ";
cin >> valores;

if(valores>=mayor)
{
mayor = valores;
posmayor=i;
}
if(valores<=menor)
{
menor = valores;
posmenor=i;
}
}
cout << "El mayor es: " << mayor << " su pos es: " << posmayor << endl;
cout << "El menor es: " << menor << " su pos es: " << posmenor << endl;
return 0;
}
10-06-2019 20:02
Envíale un email Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
luchovl2 Sin conexión
Presidente del CEIT
Dígame, Ingeniero.
********

Ing. Electrónica
Facultad Regional Buenos Aires

Mensajes: 1.335
Agradecimientos dados: 24
Agradecimientos: 356 en 324 posts
Registro en: May 2009
Mensaje: #2
RE: [AYUDA] Ejercicio 21 Algoritmos y Estructura de datos
Hola s3bas9721.
Los valores iniciales de menor y mayor tienen que ser tales que cualquier primer valor posible los supere.
O sea, que el primer valor ingresado sea mayor que "mayor" y menor que "menor".

En otras palabras, en "mayor" poné el menor valor posible. Y en "menor" poné el mayor valor posible.
De esta forma te asegurás que no te pierdas ningún valor.

Como lo tenés ahora, en "menor" tenés 0. Si todos los valores que ingresás son mayores a cero, nunca vas a capturar el menor.
10-06-2019 22:08
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
matiifran Sin conexión
Empleado del buffet
Intentando aprobar
*

Ing. en Sistemas
Facultad Regional Santa Fe

Mensajes: 2
Agradecimientos dados: 1
Agradecimientos: 0 en 0 posts
Registro en: Jun 2019
Mensaje: #3
RE: [AYUDA] Ejercicio 21 Algoritmos y Estructura de datos
Hola, el problema radica en que vos ya le estas asignando valores a mayor y menor... Lo cual si ingresas todos números negativos, no te va a funcionar el código.
Una posible solución es la siguiente:

int mayor, menor, nvalores, valores, posmayor, posmenor;

cout << "Cuantos valores va a ingresar: ";
cin >> nvalores;

cout << "Ingrese valor: ";
cin>> valores;
mayor= valores;
menor= valores

for(int i=1;i<=nvalores-1;i++)
{
cout << "Ingrese valor: ";
cin >> valores;

if(valores>=mayor)
{
mayor = valores;
posmayor=i;
}
if(valores<=menor)
{
menor = valores;
posmenor=i;
}
}

Avisame si te sirve. Saludooos
10-06-2019 23:03
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
CarooLina Sin conexión
Colaborador

********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 3.743
Agradecimientos dados: 1.496
Agradecimientos: 1.686 en 547 posts
Registro en: Sep 2010
Mensaje: #4
RE: [AYUDA] Ejercicio 21 Algoritmos y Estructura de datos
La tecnica del mayor sirve para cuando te dicen que son naturales o positivos.

El for que dice el chico de arriba deberia empezar en 2, por que el 1 lo usaste recien y sin hacer la resta en el segundo miembro del for

love
11-06-2019 20:02
Envíale un email Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
s3bas9721 Sin conexión
Empleado del buffet
Sin estado :|
*

Ing. en Sistemas
-----

Mensajes: 4
Agradecimientos dados: 0
Agradecimientos: 1 en 1 posts
Registro en: Aug 2018
Mensaje: #5
RE: [AYUDA] Ejercicio 21 Algoritmos y Estructura de datos
(10-06-2019 23:03)matiifran escribió:  Hola, el problema radica en que vos ya le estas asignando valores a mayor y menor... Lo cual si ingresas todos números negativos, no te va a funcionar el código.
Una posible solución es la siguiente:

int mayor, menor, nvalores, valores, posmayor, posmenor;

cout << "Cuantos valores va a ingresar: ";
cin >> nvalores;

cout << "Ingrese valor: ";
cin>> valores;
mayor= valores;
menor= valores

for(int i=1;i<=nvalores-1;i++)
{
cout << "Ingrese valor: ";
cin >> valores;

if(valores>=mayor)
{
mayor = valores;
posmayor=i;
}
if(valores<=menor)
{
menor = valores;
posmenor=i;
}
}

Avisame si te sirve. Saludooos

Hola que tal, probé este código y cuando ingreso los números me resta una posición del mayor y la del menor me da números al azar

(11-06-2019 20:02)CarooLina escribió:  La tecnica del mayor sirve para cuando te dicen que son naturales o positivos.

El for que dice el chico de arriba deberia empezar en 2, por que el 1 lo usaste recien y sin hacer la resta en el segundo miembro del for

Hola si, lo cambié eso pero el problema sigue siendo con la posición del menor que al hacerlo me da números al azar.

(10-06-2019 22:08)luchovl2 escribió:  Hola s3bas9721.
Los valores iniciales de menor y mayor tienen que ser tales que cualquier primer valor posible los supere.
O sea, que el primer valor ingresado sea mayor que "mayor" y menor que "menor".

En otras palabras, en "mayor" poné el menor valor posible. Y en "menor" poné el mayor valor posible.
De esta forma te asegurás que no te pierdas ningún valor.

Como lo tenés ahora, en "menor" tenés 0. Si todos los valores que ingresás son mayores a cero, nunca vas a capturar el menor.
Hola hice lo siguiente, como menor lo inicié en 0 lo saqué y al probarlo funcionó.

Hola, muchas gracias por los comentarios me ayudaron a analizar mejor el problema y lo pude solucionar, dejo acá abajo el código por si alguno más adelante tiene el mismo problema con este mismo ejercicio:

#include <iostream>

using namespace std;

int main()
{
int mayor, menor, nvalores, valores, posmayor, posmenor;
mayor =0;

cout << "Cuantos valores va a ingresar: ";
cin >> nvalores;

for(int i=1;i<=nvalores;i++)
{
cout << "Ingrese valor: ";
cin >> valores;

if(valores>=mayor)
{
mayor = valores;
posmayor=i;
}
if(valores<=menor)
{
menor = valores;
posmenor=i;
}
}
cout << "El mayor es: " << mayor << " su pos es: " << posmayor << endl;
cout << "El menor es: " << menor << " su pos es: " << posmenor << endl;
return 0;
}

MI-21:"Dados N valores informar el mayor, el menor y en que posición del conjunto fueron ingresados."

#include <iostream>

using namespace std;

int main()
{
int mayor, menor, nvalores, valores, posmayor, posmenor;
mayor =0;

cout << "Cuantos valores va a ingresar: ";
cin >> nvalores;

for(int i=1;i<=nvalores;i++)
{
cout << "Ingrese valor: ";
cin >> valores;

if(valores>=mayor)
{
mayor = valores;
posmayor=i;
}
if(valores<=menor)
{
menor = valores;
posmenor=i;
}
}
cout << "El mayor es: " << mayor << " su pos es: " << posmayor << endl;
cout << "El menor es: " << menor << " su pos es: " << posmenor << endl;
return 0;
}
(Este mensaje fue modificado por última vez en: 12-06-2019 23:11 por s3bas9721.)
12-06-2019 22:56
Envíale un email Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
[-] s3bas9721 recibio 1 Gracias por este post
CarooLina (13-06-2019)
luchovl2 Sin conexión
Presidente del CEIT
Dígame, Ingeniero.
********

Ing. Electrónica
Facultad Regional Buenos Aires

Mensajes: 1.335
Agradecimientos dados: 24
Agradecimientos: 356 en 324 posts
Registro en: May 2009
Mensaje: #6
RE: [AYUDA] Ejercicio 21 Algoritmos y Estructura de datos
No es buena idea usar una variable sin inicializar, como estás haciendo con "menor".
Probablemente el compilador te tira una warning.

Imagino que en algún lado está definida una constante con el máximo valor para integer. Algo tipo INT_MAX.
13-06-2019 20:31
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Buscar en el tema
Enviar respuesta 




Usuario(s) navegando en este tema: 2 invitado(s)