Java - Ayuda con error: replace chain of ifs with switch

 
Vista:

Ayuda con error: replace chain of ifs with switch

Publicado por lewis (1 intervención) el 06/05/2018 22:25:32
Hola soy novato en este campo. Estoy haciendo un programa de practica y me esta arrojando los siguientes errores:
replace chain of ifs with switch (linea 95)
Incompatible types: String cannot be converted to char
Incompatible types: String cannot be converted to int



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
176
177
178
import javax.swing.JOptionPane;
public class MAMEV10 {
 
    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        //  Datos de entrada
        int vlrcopiaescritura, cantcopias, acto1, acto2, acto3, vlrotros, canthojamatriz, vlrautenticacion, codprotocolista, cantfactura;
        int descuento, contador_factura, totalcopias50=0, subotros, notreferencia;
        double totalcopias30=0, derechonot05=0, suma_actos, bliquidacion=0, totalderechonot, bliquidacionotros, totalotros, autentica30, total_a_pagar;
        int costohojasotros, autentica50;
        String nombre_protoc, codigo_protoc, nombre_usuario, codigo_usuario, clave_usuario, numeroescritura, numerofactura;
        int ident_protoc;
        char tipoescritura;
        int porcpagar;
        char detener;
        int vlrderechonot=19600, vlrunthojamatriz=3500, costohoja=0;
 
        //Procesos
        nombre_usuario = JOptionPane.showInputDialog (null,"\n"+"Ingrese su nombre"," MAMEV1.0 ",3);
        tipoescritura = JOptionPane.showInputDialog (null,"\n"+"Ingrese tipo de escritura"," MAMEV1.0 ",3);
 
        if (tipoescritura == '1') {
            cantfactura = JOptionPane.showInputDialog (null,"\n"+"Ingrese cantidad de facturas a liquidar: "," MAMEV1.0 ",3);
            contador_factura = 0;
 
            while (contador_factura <= cantfactura) {
 
                vlrcopiaescritura = JOptionPane.showInputDialog (null,"\n"+"Ingrese valor total por concepto de copias : "," MAMEV1.0 ",3);
                cantcopias = JOptionPane.showInputDialog (null,"\n"+ "Ingrese cantidad de copias: ", " MAMEV1.0 ", 3);
                acto1 = JOptionPane.showInputDialog (null,"\n"+ "Ingrese valor del primer acto: ", " MAMEV1.0 ", 3);
		acto2 = JOptionPane.showInputDialog (null,"\n"+ "Ingrese valor del segundo acto: ", " MAMEV1.0 ", 3);
		acto3 = JOptionPane.showInputDialog (null,"\n"+ "Ingrese valor del tercer acto: ", " MAMEV1.0 ", 3);
		descuento = JOptionPane.showInputDialog (null,"\n"+ "Ingrese valor del descuento: ", " MAMEV1.0 ", 3);
		vlrotros = JOptionPane.showInputDialog (null,"\n"+ "Ingrese valor correspondiente a otros: ", " MAMEV1.0 ", 3);
		canthojamatriz = JOptionPane.showInputDialog (null,"\n"+ "Ingrese cantidad de hojas matriz: ", " MAMEV1.0 ", 3);
		vlrautenticacion = JOptionPane.showInputDialog (null,"\n"+"Ingrese valor de autenticaciones: "," MAMEV1.0 ", 3);
 
                /*desarrollo de la aplicacion*/
		costohoja = cantcopias * 226;
		bliquidacion = (vlrcopiaescritura - costohoja) - ((vlrcopiaescritura - costohoja) * 0.125);
		totalcopias30 = bliquidacion * 0.30;
		suma_actos = (acto1 + acto2 + acto3) - ((acto1 + acto2 + acto3) * 0.125) - descuento;
		if (acto1 > 0) {
                    if (acto2 > 0) {
                    	if (acto3 > 0) {
                            totalderechonot = suma_actos - (vlrderechonot * 3);
                            derechonot05 = totalderechonot * 0.05;
                            } else {
                            totalderechonot = suma_actos - (vlrderechonot * 2);
                            derechonot05 = totalderechonot * 0.05;
                            }
			} else {
			totalderechonot = suma_actos - (vlrderechonot * 1);
			derechonot05 = totalderechonot * 0.05;
			}
                    } else {
                    totalderechonot = 0;
                    derechonot05 = totalderechonot * 0.05;
                    }
                /*Instrucciones*/
                if (vlrotros > 0) {
                    subotros = ((cantcopias - canthojamatriz) / 2) * vlrunthojamatriz;
                    notreferencia = vlrotros - subotros;
                    /*
                    escriba "La suma total de actos es: ",suma_actos
                    llamar nueva_linea
                    escriba "El total de derechos notariales es: ",totalderechonot
                    llamar nueva_linea
                    escriba "El valor de la nota de referencia y es: ",notreferencia
                    llamar nueva_linea
                    */
                    costohojasotros = subotros - ((subotros / vlrunthojamatriz) * 226);
                    bliquidacionotros = costohojasotros - (costohojasotros * 0.125);
			totalotros = bliquidacionotros * 0.5;
			} else {
			totalotros = 0;
			}
			autentica30 = (vlrautenticacion - (vlrautenticacion * 0.125)) * 0.3;
			porcpagar = JOptionPane.showInputDialog (null, "\n"+ "Escoja el porcentaje a pagar: 1- 50% y 2- 100: ", " MAMEV1.0 ", 3);
                        if (porcpagar == '1') {
                            total_a_pagar = (totalcopias30 + derechonot05 + totalotros + autentica30) * 0.5;
                            } else if (porcpagar == '2') {
                                total_a_pagar = totalcopias30 + derechonot05 + totalotros + autentica30;
                                } else {
                                    porcpagar = JOptionPane.showInputDialog (null "\n"+ "Escoja el porcentaje a pagar: 1- 50% y 2- 100: ", " MAMEV1.0 ", 3);
                                    }
                                porcpagar = JOptionPane.showInputDialog (null "\n"+ "Escoja el porcentaje a pagar: 1- 50% y 2- 100: ", " MAMEV1.0 ", 3);
            contador_factura = contador_factura + 1;
            //Impresion de datos
            JOptionPane.showMessageDialog (null "\n"+ "El total de copias es: "+totalcopias30, " MAME V1.0", 1);
            JOptionPane.showMessageDialog (null "\n"+ " El total de derechos notariales es: "+ derechonot05, " MAME V1.0", 1);
            JOptionPane.showMessageDialog (null "\n"+ " El total de otros es: "+ totalotros, " MAME V1.0", 1);
            JOptionPane.showMessageDialog (null "\n"+ " El total de autenticaciones es: "+ autentica30, " MAME V1.0", 1);
            JOptionPane.showMessageDialog (null "\n"+ " El total a pagar al es "+ total_a_pagar, " MAME V1.0", 1);
            //lea detener
            } //Fin Mientras
	} else  if (tipoescritura == '2')   {
        //Para tipo de escrituras Normal
            cantfactura = JOptionPane.showInputDialog (null "\n"+"Ingrese cantidad de facturas a liquidar: "," MAMEV1.0 ",3);
            contador_factura = 0; //contador para control del ciclo
            while (contador_factura <= cantfactura) {
            	vlrcopiaescritura = JOptionPane.showInputDialog (null "\n"+" Ingrese valor total por concepto de copias : ","MAME V1.0",3);
            	cantcopias  = JOptionPane.showInputDialog (null "\n"+ " Ingrese cantidad de copias: ", "MAME V1.0", 3);
                acto1 = JOptionPane.showInputDialog (null "\n"+ " Ingrese valor del primer acto: ", "MAME V1.0", 3);
		acto2 = JOptionPane.showInputDialog (null "\n"+ " Ingrese valor del segundo acto: ", "MAME V1.0", 3);
		acto3 = JOptionPane.showInputDialog (null "\n"+ " Ingrese valor del tercer acto: ", "MAME V1.0", 3);
		descuento  = JOptionPane.showInputDialog (null "\n"+ " Ingrese valor del descuento:  ", "MAME V1.0", 3);
		vlrotros  = JOptionPane.showInputDialog (null "\n"+ " Ingrese valor correspondiente a otros: ", "MAME V1.0", 3);
		canthojamatriz = JOptionPane.showInputDialog (null "\n"+ " Ingrese cantidad de hojas matriz: ", "MAME V1.0", 3);
		vlrautenticacion = JOptionPane.showInputDialog (null "\n"+ " Ingrese valor de autenticaciones: ", "MAME V1.0", 3);
                /*desarrollo de la aplicacion*/
		costohoja = cantcopias * 226;
		bliquidacion = (vlrcopiaescritura - costohoja) - ((vlrcopiaescritura - costohoja) * 0.125);
                totalcopias50 = bliquidacion * 0.50;
		suma_actos = (acto1 + acto2 + acto3) - ((acto1 + acto2 + acto3) * 0.125) – descuento;
		if (acto1 > 0) {
                    if (acto2 > 0) {
                        if (acto3 > 0) {
                            totalderechonot = suma_actos - (vlrderechonot * 3);
                            derechonot05 = totalderechonot * 0.05;
			} else {
			totalderechonot = suma_actos - (vlrderechonot * 2);
			derechonot05 = totalderechonot * 0.05;
			}
                    }
                    else {
                    totalderechonot = suma_actos - (vlrderechonot * 1);
                    derechonot05 = totalderechonot * 0.05;
                    }
                } else {
		totalderechonot = 0;
		derechonot05 = totalderechonot * 0.05;
                }
                if (vlrotros > 0) {
                    subotros = ((cantcopias - canthojamatriz) / 2) * vlrunthojamatriz;
                    notreferencia = vlrotros – subotros;
                    /*escriba "La suma total de actos es: ",suma_actos
                    llamar nueva_linea
                    escriba "El total de derechos notariales es: ",totalderechonot
                    llamar nueva_linea
                    escriba "El valor de la nota de referencia y es: ",notreferencia
                    llamar nueva_linea*/
                    costohojasotros = subotros - ((subotros / vlrunthojamatriz) * 226);
                    bliquidacionotros = costohojasotros - (costohojasotros * 0.125);
                    totalotros = bliquidacionotros * 0.5;
		} else {
                    totalotros = 0;
		}
		autentica50 = (vlrautenticacion - (vlrautenticacion * 0.125)) * 0.5;
		porcpagar = JOptionPane.showInputDialog (null "\n"+ "Escoja el porcentaje a pagar: 1- 50% y 2- 100:  ", "MAME V1.0", 3);
 
                if (porcpagar == 1) {
		total_a_pagar = (totalcopias50 + derechonot05 + totalotros + autentica50) * 0.5;
                } else {
                    if (porcpagar == '2') {
                    total_a_pagar = totalcopias50 + derechonot05 + totalotros + autentica50;
                    } else {
                    porcpagar = JOptionPane.showInputDialog (null "\n"+ "Escoja el porcentaje a pagar: 1- 50% y 2- 100:  ", "MAME V1.0", 3);
                    }
                    porcpagar = JOptionPane.showInputDialog (null "\n"+ "Escoja el porcentaje a pagar: 1- 50% y 2- 100:  ", "MAME V1.0", 3);
                    }
		contador_factura = contador_factura + 1;
		System.getProperty("line.separator");
		//Impresion de datos
		JOptionPane.showMessageDialog(null "\n"," El total de copias es: "+ totalcopias50);
                JOptionPane.showMessageDialog(null "\n"," El total de derechos notariales es: "+ derechonot05);
		JOptionPane.showMessageDialog(null "\n"," El total de otros es: "+ totalotros);
		JOptionPane.showMessageDialog(null "\n"," El total de autenticaciones es: "+autentica50);
                JOptionPane.showMessageDialog(null "\n"," El total a pagar al es "+total_a_pagar);
		}
			Else {
				JOptionPane.showMessageDialog(null "\n"," Ingrese tipo de Escritura: "+tipoescritura);
			}
        }
    }
}
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