Java - Separar un programa utilizando public static void (metodos propios del programador)

 
Vista:

Separar un programa utilizando public static void (metodos propios del programador)

Publicado por Sofia (2 intervenciones) el 29/12/2017 05:15:46
Buenos dias quiero separar un programa utilizando metodos propios del programador..

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
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
import javax.swing.*;
public class Examen_Conversiones {
    public static void main(String[]args){
        //Declaraciones de variables primitivas
		int NumeroConversion = 0; int Cociente = 0; int Residuo = 0; int Exp = 0;
		String Seleccion=""; int Base = 0; int SeleccionTran = 0; String Total = "";
		double ResultadoMulti = 0; double ResultadoPo = 0; String Mensaje = "";
		String NumeroParcial = ""; char CaracterEva = ' ';String CaracterCadena = "";
		double ResultadoSuma = 0;
		//Datos de entrada
		do{
			Seleccion= JOptionPane.showInputDialog("Selecciona una de las siguientes categorías:\n1° Conversión de número decimal\n2° Conversiones de número binario\n3° Conversión de número hexadecimal\n4° Salir");
			SeleccionTran = Integer.parseInt(Seleccion);
		}while(SeleccionTran != 1 && SeleccionTran != 2 && SeleccionTran != 3 && SeleccionTran != 4 );
		switch (Seleccion){
			case "1" :	do{
							Seleccion=JOptionPane.showInputDialog("A que base deseas convertir el número decimal\n2 Binario\n8 Octal\n16 Hexadecimal\nTeclea 2, 8 o 16");
							Base= Integer.parseInt(Seleccion);
						}while(Base != 2 && Base != 8 && Base != 16);
						Seleccion = JOptionPane.showInputDialog("Ingresa el número decimal que deseas convertir: ");
						NumeroConversion = Integer.parseInt(Seleccion);
						while(NumeroConversion > 0 ){
							Residuo= NumeroConversion % Base;
							Cociente = NumeroConversion / Base;
 
							switch (Base){
								case 2 : 	Total = Residuo + Total;
											Mensaje = "El resultado a binario de "+Seleccion+" es: " ;
											break;
								case 8 :	Total = Residuo + Total;
											Mensaje = "El resultado a octal de "+Seleccion + " es: ";
											break;
								case 16 : 	Mensaje= "El resultado a hexadecimal de "+Seleccion+" es:";
											switch(Residuo){
												case 10 :	Total = "A"+Total;
															break;
												case 11 :	Total = "B"+Total;
															break;
												case 12 : 	Total = "C"+Total;
															break;
												case 13 : 	Total = "D"+Total;
															break;
												case 14 :	Total = "E"+Total;
															break;
												case 15 :	Total = "F"+Total;
															break;
												default : 	Total = Residuo+Total;
 
											}
											break;
							}
							NumeroConversion = Cociente;
						}
						JOptionPane.showMessageDialog(null,Mensaje + Total);
						break;
			case "2" : 	do{
							Seleccion= JOptionPane.showInputDialog("A que base deseas convertir el número binario:\n8 Octal\n10 Decimal\n16 Hexadecimal\nTeclea 8, 10, 16");
							Base = Integer.parseInt(Seleccion);
						}while(Base != 8 && Base!= 10 && Base!= 16);
						Seleccion = JOptionPane.showInputDialog("Ingresa el número binario que deseas convertir: ");
						NumeroParcial= Seleccion;
						SeleccionTran= Seleccion.length();
						for (int Posicion = SeleccionTran-1; Posicion>=0; Posicion--){
							CaracterEva = (Seleccion.charAt(Posicion));
							CaracterCadena = "0"+CaracterEva;
							ResultadoPo = Math.pow(2,Exp);
							ResultadoMulti = Integer.parseInt(CaracterCadena)*ResultadoPo;
							ResultadoSuma = ResultadoMulti+ResultadoSuma;
							Exp++;
							}
							if(Base == 10){
								// CASO VERDADERO
								Mensaje= "El resultado a decimal de "+Seleccion +" es : ";
								JOptionPane.showMessageDialog(null,Mensaje+ResultadoSuma);
							}else
								// CASO FALSO
								if(Base==8 || Base == 16){
									// CASO VERDADERO
									NumeroConversion = (int)ResultadoSuma;
									while(NumeroConversion > 0){
										// ACCIONES A REPETIR
										Residuo = NumeroConversion % Base;
										Cociente = NumeroConversion / Base;
										switch(Base){
											case 8 :	Mensaje = "El resultado a octal de "+Seleccion+" es: ";
														Total = Residuo+Total;
														break;
											case 16: 	Mensaje = "El resultado a hexadecimal de "+Seleccion+" es: ";
														switch(Residuo){
															case 10 :	Total = "A"+Total;
																		break;
															case 11 : 	Total = "B"+Total;
																		break;
															case 12 : 	Total = "C"+Total;
																		break;
															case 13 :	Total = "D"+Total;
																		break;
															case 14 : 	Total = "E"+Total;
																		break;
															case 15 :	Total = "F"+Total;
																		break;
															default : 	Total = Residuo + Total;
														}
 
										}
									NumeroConversion = Cociente;
									}
									JOptionPane.showMessageDialog(null,Mensaje+Total);
								}
						break;
			case "3" : 	do{
							Seleccion = JOptionPane.showInputDialog("A que base deseas convertir el número Hexadecimal:\n2 Binario\n8 Octal\n10 Decimal\nTeclea 2, 8, 10");
							Base = Integer.parseInt(Seleccion);
 
						}while(Base != 2 && Base!= 8 && Base!=10);
						Seleccion = JOptionPane.showInputDialog("Teclea el número hexadecimal que deseas convertir: ");
						SeleccionTran = Seleccion.length();
						int Num_Hex = 0;
						for(int Posicion = SeleccionTran-1; Posicion >=0; Posicion--){
							//Acciones a repetir
							CaracterEva = Seleccion.charAt(Posicion);
							switch(CaracterEva){
								case 'A' :	Num_Hex = 10;
											break;
								case 'B' : 	Num_Hex = 11;
											break;
								case 'C' :	Num_Hex = 12;
											break;
								case 'D' :	Num_Hex = 13;
											break;
								case 'E' : 	Num_Hex = 14;
											break;
								case 'F' : 	Num_Hex = 15;
											break;
								default  :  CaracterCadena = "0"+CaracterEva;
											Num_Hex = Integer.parseInt(CaracterCadena);
											break;
 
							}
							// Hexadecimal a decimal 
							ResultadoPo = Math.pow(16,Exp);
							ResultadoMulti = Num_Hex*ResultadoPo;
							ResultadoSuma = ResultadoSuma + ResultadoMulti;
							Exp++;
						}
						// Decimal a otras bases
						if(Base == 10){
							// CASO VERDADERO
							Mensaje = "El resultado a decimal de "+Seleccion+" es: ";
							JOptionPane.showMessageDialog(null,Mensaje+ResultadoSuma);
						}else
							if(Base == 8 || Base == 2){
								// CASO VERDADERO
								NumeroConversion = (int)ResultadoSuma;
								while(NumeroConversion > 0 ){
									Residuo = NumeroConversion % Base;
									Cociente = NumeroConversion / Base;
									Total = Residuo + Total;
									switch(Base){
										case 2 :	Mensaje = "El resultado a binario de "+Seleccion+" es: ";
													break;
										case 8 :	Mensaje = "El resultado a octal de "+Seleccion+" es: ";
									                break;
									}
									NumeroConversion = Cociente;
								}
								// DATOS DE SALIDA
								JOptionPane.showMessageDialog(null,Mensaje+Total);
							}
						break;
		    case "4" :	break;
		}
 
    }
}
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

Separar un programa utilizando public static void (metodos propios del programador)

Publicado por Tom (1561 intervenciones) el 29/12/2017 13:45:17
¿ Separarlo de dónde ? o ¿ de qué ?
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