Java - Asignar valor a variable

 
Vista:
sin imagen de perfil

Asignar valor a variable

Publicado por Morokei (12 intervenciones) el 22/04/2017 23:08:57
tengo este codigo
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
public void Copatibilidad(int Androide1,int Androide2)
    {
        int Aux1  =    0;
        int Aux2  =    0;
        int cont1;
        int cont2;
        boolean cifrasiguales1;
        boolean cifrasiguales2;
        Aux1 = Aux1 + Androide1 % 10;
        Aux2 = Aux2 + Androide2 % 10;
 
 
 
            if(Androide1  % 11 == Aux1 || Androide1 % 11 == 0){
                cifrasiguales1 = true;
            }else{
                cifrasiguales1 = false;
            }
 
            if(Androide2 % 11 == Aux2 || Androide2 % 11 == 0){
                cifrasiguales2 = true;
            }else{
                cifrasiguales2 = false;
 
            }
 
             while(Androide1 >0) {
            int dig=0;
            Androide1=Androide1 / 10;
            dig++;
        }
 
        while(Androide2 >0) {
            int dig2=0;
            Androide2=Androide2 / 10;
            dig2++;
        }

quiero asignarle a cont1 y cont2 los valores que me saldran en los ciclos while como lo hago??
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

Asignar valor a variable

Publicado por Jordi (135 intervenciones) el 22/04/2017 23:23:43
Aclara un poco mejor lo que quieres hacer, no lo he entendido. Tampoco estaría mal una brebe descripción de que quieres hacer con el programa.
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

Asignar valor a variable

Publicado por Morokei (12 intervenciones) el 23/04/2017 00:48:21
EL problema nos dice que dos numeros se pueden unir si cumplen con las siguientes condiciones;

Los dıgitos de cada numero N son los mismos, por ejemplo: N = 9999

La cantidad de dıgitos de N1 y N2 deben ser iguales, por ejemplo: N1 = 555 y N2 = 666

Los dıgitos de N1 no deben coincidir con los digitos de N2, por ejemplo N1 = 555 y N2 = 666. Esto quiere decir que N1 = 555 y N2 = 555
no podrıan ser compatibles.

Lo que quiero es la parte 2, sacar los digitos de N1 y N2 y compararlos
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 Sebastian
Val: 282
Ha disminuido 1 puesto en Java (en relación al último mes)
Gráfica de Java

Asignar valor a variable

Publicado por Sebastian (91 intervenciones) el 23/04/2017 21:34:39
Bueno, hay que manejar varios casos.

1) cuando los números n1 y n2, no son iguales.
2) cuando la cantidad de dígitos de n1 y n2 son iguales.
3)cuando todos los dígitos de n1 son iguales e igual los de n2.

por lo tanto el codigo seria algo así,
yo modifique bastante tu código, trata lo de implementar en el tuyo.

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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
public void Copatibilidad(int Androide1, int Androide2) {
	int Aux1 = 0;
	int Aux2 = 0;
	boolean cifrasiguales1= true;
	boolean cifrasiguales2= true;
	Aux1 = Aux1 + Androide1 % 10;
	Aux2 = Aux2 + Androide2 % 10;
	// convierto los numeros en strign para saber la cantidad de digitos
	String num1 = Integer.toString(Androide1);
	String num2 = Integer.toString(Androide2);
	// vectores para guardar los digitos por separado
	int digitos1[] = new int[num1.length()];
	int digitos2[] = new int[num2.length()];
	//condicional para saber si los numeros n1 y n2 son iguales
	if (Androide1 != Androide2) {
	    // condicional para saber si la cantidad de digitos son iguales
	    if (num1.length() == num2.length()) {
		//ciclo para sacar los digitos y guardarlos en el vector de n1
		for (int i = 0; i < digitos1.length; i++) {
 
		    if (Aux1 / 10 > 1) {
			digitos1[i] = Aux1 % 10;
			Aux1 = Aux1 / 10;
		    } else {
			digitos1[i] = Aux1 / 10;
		    }
		}
//		ciclo para sacar los digitos y guardarlos en el vector de n2
		for (int i = 0; i < digitos2.length; i++) {
 
		    if (Aux2 / 10 > 1) {
			digitos2[i] = Aux1 % 10;
			Aux2 = Aux2 / 10;
		    } else {
			digitos2[i] = Aux1 / 10;
		    }
		}
//		ciclo para comparar los digitos de n1
		for(int i= 0;i<digitos1.length-1;i++) {
//		    condicional para saber si los digitos son iguales
		    if(digitos1[i] != digitos1[i++]) {
			cifrasiguales1=false;
			break;
		    }
		}
//		ciclo para comparar los digitos de n2
		for(int i= 0;i<digitos2.length-1;i++) {
//		    condicional para saber si los digitos son iguales
		    if(digitos2[i] != digitos2[i++]) {
			cifrasiguales2=false;
			break;
		    }
		}
//		condicional para saber si n1 tiene todos los digitos iguales
		if(cifrasiguales1) {
		    System.out.println("cumple "+Androide1);
		}else {
    		    System.out.println("no cumple"+Androide1);
		}
//		condicional para saber si n2 tiene todos los digitos iguales
		if(cifrasiguales2) {
		    System.out.println("cumple "+Androide2);
		}else {
    		    System.out.println("no cumple"+Androide2);
		}
 
	    }else {
		System.out.println("los numeros ingresados son de cifras diferentes");
	    }
	}else {
	    System.out.println("Los numeros son iguales");
	}
 
}
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