Visual CSharp .NET - vectores (mayor y menor elemento)

 
Vista:

vectores (mayor y menor elemento)

Publicado por nahuel (6 intervenciones) el 25/10/2013 01:09:39
hola si alguien me pueda ayudar en una duda!! estoy estudiando c# y me quede en la parte de vectores mayor y menor elemento .No logro comprender la explicación:

Definimos los dos vectores paralelos donde almacenaremos los nombres y los sueldos de los operarios:
private string[] nombres;
private float[] sueldos;
Creamos los dos vectores y procedemos a cargar sus elementos:
nombres=new string[5];
sueldos=new float[5];
for(int f=0;f < nombres.Length;f++)
{
Console.Write("Ingrese el nombre del empleado:");
nombres[f] = Console.ReadLine();
Console.Write("Ingrese el sueldo:");
string linea;
linea = Console.ReadLine();
sueldos[f]=float.Parse(linea);
}
Para obtener el mayor sueldo y el nombre del operario realizar los siguientes pasos:
Inicializamos una variable mayor con la primer componente del vector sueldos:
mayor=sueldos[0];
Inicializamos una variable pos con el valor 0, ya que decimos primeramente que el mayor es la primer componente del vector:
pos=0;
Recorremos las componentes del vector que faltan analizar, o sea, de la 1 a la 4:
for(int f=1;f < nombres.Length;f++)
Accedemos a cada componente para controlar si supera lo que tiene la variable mayor:
if (sueldos[f] > mayor)
En caso de ser verdadera la condición asignamos a la variable mayor este nuevo valor sueldos[f]
mayor=sueldos[f];
y a la variable pos le cargamos la variable f que indica la componente que estamos analizando:
pos=f
Cuando salimos de la estructura repetitiva imprimimos la variable mayor que contiene el mayor sueldo y para imprimir el nombre del operario conociendo la posición del mayor sueldo imprimimos el elemento que ocupa la posición que indica la variable pos en el vector paralelo:
Console.WriteLine("El empleado con sueldo mayor es "+nombres[pos]);
Console.WriteLine("Tiene un sueldo:"+mayor);

" No entiendo bien la funcion de la variables mayor y pos para que verifique cual es el vector mayor alguien me podria ayudar"
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
sin imagen de perfil

vectores (mayor y menor elemento)

Publicado por Jesus (9 intervenciones) el 26/10/2013 16:33:51
Hola! chequea es sencillo, tenes dos variables MAYOR y POS.
Bien cuando la idea esta en que vos recorres un vector de tamaño 5. Ese vector va de la posición 0 hasta la 4.
Por eso POS=0, empiezas en el primer indice. y vas recorriendo hasta llegar al ultimo.
MAYOR es llamada variable auxiliar. Al recorrer el vector guardas dentro de ella el valor mas grande.

Repasa un poco el concepto de vector. ;)
Saludos
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

vectores (mayor y menor elemento)

Publicado por nahuel (6 intervenciones) el 29/10/2013 04:13:37
si eso entiendo del auxiliar pero no entiendo como es el motor de funcionamiento de la funcion para saber cual es el mayor por ejemplo:


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
public void MayorSueldo()
        {
            float mayor;
            int pos;
            mayor=sueldos[0];
            pos=0;
            for(int f=1;f < nombres.Length;f++)
            {
                if (sueldos[f] > mayor)
                {
                    mayor=sueldos[f];
                    pos=f;
                }
            }
            Console.WriteLine("El empleado con sueldo mayor es "+nombres[pos]);
            Console.WriteLine("Tiene un sueldo:"+mayor);
            Console.ReadKey();
        }
no entiendo el mecanismo del for " if (sueldos[f] > mayor) " eso es lo que no entiendo compara los 5 elementos con el indice? eso es lo que no me cuadra o esa es una formula por defecto de conseguir auctomaticamente el mayor .
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

vectores (mayor y menor elemento)

Publicado por Jesus (9 intervenciones) el 29/10/2013 19:28:47
es un iterador, el for. Osea te cuenta de 1 a 4(ya que es el valor de nombres.Length) . Entonces el loco te toma el valor que este en la posición 1 del vector sueldos. Y ahi hace la verificación:
1)si ese valor es mas grande que el que esta en la posición 0, entonces guarda ese valor en la variable mayor.
2)si es mas chico no hace nada y pasa a la siguiente iteracion(la siguiente posición del vector)

Saludos
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

vectores (mayor y menor elemento)

Publicado por nahuel (6 intervenciones) el 01/11/2013 04:21:30
millll mill gracias amigo tienes un mail sos un genio conosesalgun sitio para ver codigos para ir practicando
muchas gracias compañero estoy iniciando en el mundo de la programacion y es una maravilla jo
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

vectores (mayor y menor elemento)

Publicado por Jesus (1 intervención) el 01/11/2013 17:58:03
Web hay muchas, lo mejor que hay es ir probando y practicando. Después es una pasada lo demás. Cualquier duda a las ordenes ;)
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

vectores (mayor y menor elemento)

Publicado por Carlos (2 intervenciones) el 02/11/2013 16:53:30
Sin bucle puedes hallar el mayor:

Prueba la siguiente linea, esto reemplaza al bucle donde buscas el mayor:

Console.WriteLine("Tiene un sueldo:"+sueldos.Max);

y luego buscas en que posicion o posiciones esta el nombre o nombres al que pertenece el sueldo...
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

vectores (mayor y menor elemento)

Publicado por nahuel (6 intervenciones) el 05/11/2013 23:02:14
como ? el sueldo.max funciona como un operador que te busca el valor del sueldo que es mayor sin usar el for? seria algo asi:

public void MayorSueldo()
{
float mayor;
int pos;
Console.WriteLine("Tiene un sueldo:"+sueldos.Max);
}
pero como buscas la posición (nombre)?
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

vectores (mayor y menor elemento)

Publicado por nahuel (6 intervenciones) el 05/11/2013 22:51:01
gracias amigo ¡¡¡¡
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

vectores (mayor y menor elemento)

Publicado por Carlos (2 intervenciones) el 06/11/2013 00:45:06
1
2
3
4
5
6
7
8
9
10
11
12
13
public void MayorSueldo()
{
 
float mayor;
int pos,x;
Console.WriteLine("Tiene un sueldo:"+sueldos.Max);
mayor=sueldos.Max;
for(x=0;x<sueldos.Length;x++)
   if(mayor==sueldos[x]) {
                        Console.WriteLine("Tiene un sueldo:"+nombres[x]);
}
 
}
Pruebalo...se hace mas simple el programa.

Si tienes otras dudas escribeme a: [email protected]
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

vectores (mayor y menor elemento)

Publicado por nahuel (6 intervenciones) el 06/11/2013 01:50:44
buenisimooooo¡¡¡¡ gracias amigasooooooo¡¡¡¡¡
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