Java - Java basico, vectores.

 
Vista:
sin imagen de perfil

Java basico, vectores.

Publicado por jose (4 intervenciones) el 04/02/2014 23:52:58
Hola amigos, hay un problema que no comprendo, os lo expongo y ojala alguien me pueda echar una mano:
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
import java.util.Scanner;
public class PruebaVector7 {
    private Scanner teclado;
    private int[] vec;
 
    public void cargar() {
        teclado=new Scanner(System.in);
        vec=new int[10];
        for(int f=0;f<10;f++) {
            System.out.print("Ingrese elemento:");
            vec[f]=teclado.nextInt();
        }
    }
 
    public void verificarOrdenado() {
        int orden=1;
        for(int f=0;f<9;f++) {
            if (vec[f+1]<vec[f]) {
                orden=0;
            }
        }
        if (orden==1) {
            System.out.println("Esta ordenado de menor a mayor");
        } else {
            System.out.println("No esta ordenado de menor a mayor");
        }
    }
 
    public static void main(String[] ar) {
        PruebaVector7 pv=new PruebaVector7();
        pv.cargar();
        pv.verificarOrdenado();
    }
}

En concreto no entiendo esta parte:

1
2
3
4
5
6
7
8
9
10
11
12
13
public void verificarOrdenado() {
        int orden=1;
        for(int f=0;f<9;f++) {
            if (vec[f+1]<vec[f]) {
                orden=0;
            }
        }
        if (orden==1) {
            System.out.println("Esta ordenado de menor a mayor");
        } else {
            System.out.println("No esta ordenado de menor a mayor");
        }
    }

Y mas concretamente esto:

1
2
3
4
5
int orden=1;
        for(int f=0;f<9;f++) {
            if (vec[f+1]<vec[f]) {
                orden=0;
            }
alguien me lo podría explicar? A orden se le da el valor de 1, y si el vec[f+1]<vec[f] oden=0 ??? que es vec[f+1] y su diferencia con vec[f]?? y orden=0??

Gracias por vuestra ayuda!!
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

Java basico, vectores.

Publicado por jose (4 intervenciones) el 05/02/2014 00:20:24
Se me olvido poner el enunciado del problema por si sirve de algo:
Cargar un vector de 10 elementos y verificar posteriormente si el mismo está ordenado de menor a 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

Java basico, vectores.

Publicado por Carlos (35 intervenciones) el 06/02/2014 00:04:51
1
2
3
4
5
6
int orden=1;
for(int f=0;f<9;f++) {
            if (vec[f+1]<vec[f])
                     { orden=0;
                 }
             }

La variable orden esta trabajando como un interruptor en este codigo, por ejemplo si en vec ya esta ordenado en forma ascendente: 8 12 20 30 40 50 60 70 80 90 y las posiciones son de cada uno es de 0 a 9 estosa son controlados por f:
orden comienza con el valor de 1
en el bucle evalua:
f=0
if( vec(1)<vec(0)) .....if(12<8) falso orden sigue en 1.
siguiente iteracion f=1
if(vec(2)<vec(1))......if(20<12) falso orden sigue en 1
siguiente iteracion f=2
if(vec(3)<vec(2))......if(30<20) falso orden sigue en 1
asi sucesivamente...
cuando esta ordenado orden nunca se altera que en 1...esto quiere decir que esta ordenado ascendentemente
caso contrario no lo esta ya que orden va a cambiar a 0
Eso lo pregunta con el if que esta a continuacion...
if (orden==1) {.....

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