Autor
|
Tema: misplaced construct (Leído 3,885 veces)
|
m@o_614
Desconectado
Mensajes: 389
|
Tengo el siguiente codigo y me marca error en la linea del main me dice syntax error on tokens misplaced construct, pero ya lo revise y no falta ni sobra ninguna llave { public class Impuestos { public static void main (String[] args ){ // constantes final double IVA =16.0; final double POR_RET_IVA=10.0; final double POR_RET_ISR=10.0; final double POR_ISR=11.0; final int MES_CAPTURA=1; final int CAPTURA_ING=2; final int CAPTURA_GAS=3; final int L_ING_ANUAL=4; final int L_GASTO_ANUAL=5; final int CALCULO_IMP=6; final int MESES=12; final int SALIR=7; //variables para entrada de datos// double gasto_iva,iva_pag,isr_pag,gan_bruta, gan_neta,isr,iva,subtotal,ret_isr,ret_iva,total,ingreso_tot=0, gasto_tot=0,ingreso,gasto; //variables de uso interno del programa// int i,opcion,indice,mes_elegido=1; boolean ver_menu; char *meses[MESES]={"Enero","Febrero","Marzo","Abril","Mayo","Junio", "Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre"}; //Arreglo para ingresos y gastos// double gastos[]; double ingresos[]; for(i=0;i<MESES;i++) { gastos[i]=0; ingresos[i]=0; } ver_menu=1; do { System. out. println("CALCULO DE IMPUESTOS ANUAL"); System. out. println("Menu principal:"); System. out. println("1. Establecer mes para la captura (mes actual es "+meses [mes_elegido -1]); System. out. println("2. Captura de ingresos"); System. out. println("3. Captura de gastos"); System. out. println("4. Mostrar lista de ingresos anual"); System. out. println("5. Mostrar lista de gastos anual"); System. out. println("6. Calculo de impuestos anual"); System. out. println("7. Salir"); System. out. println("Opcion: "); opcion=leeInt.ScanF(); System. out. println(" "+opcion ); switch(opcion) { case MES_CAPTURA: System. out. println("Establecer mes para captura"); for(i=0,indice=0;i<MESES;i++,indice++) printf(" "+(indice+1)+") "+meses[i]); System. out. println("Elige el mes (1 a 12):"); mes_elegido=leeInt.ScanF(); System. out. println(" "+mes_elegido ); if(mes_elegido>MESES) System. out. println("Mes no valido!"); else System. out. println("Se ha establecido el mes de captura en "+meses [mes_elegido -1]); break; case CAPTURA_ING: System. out. println("Captura de ingresos"); System. out. println("Dame el ingreso del mes de "+meses [mes_elegido -1]+": "); ingreso=leeint.ScanF(); System. out. println(" "+ingreso ); ingresos[mes_elegido-1]=ingreso; break; case CAPTURA_GAS: System. out. println("Captura de gastos"); System. out. println("Dame el gasto del mes de "+meses [mes_elegido -1]+": "); gasto=leeint.ScanF(); System. out. println(" "+gasto ); gastos[mes_elegido-1]=gasto; break; case L_ING_ANUAL: System. out. println("Mostrar lista de ingresos anual"); for(i=0;i<MESES;i++) System. out. println(" "+meses [i ]+" = "+ingresos [i ]); break; case L_GASTO_ANUAL: System. out. println("Mostrar lista de gastos anual"); for(i=0;i<MESES;i++) System. out. println(" "+meses [i ]+" = "+gastos [i ]); break; case CALCULO_IMP: for(i=0;i<MESES;i++) { ingreso_tot+=ingresos[i]; gasto_tot+=gastos[i]; } iva=(ingreso_tot*IVA)/100; subtotal=ingreso_tot+iva; ret_isr=(ingreso_tot*POR_RET_ISR)/100; ret_iva=(ingreso_tot*POR_RET_IVA)/100; total=subtotal-(ret_isr+ret_iva); gan_bruta=(ingreso_tot-gasto_tot); isr=(gan_bruta*POR_ISR)/100; gan_neta=(gan_bruta-isr); isr_pag=(isr-ret_isr); gasto_iva=(gasto_tot*IVA)/100; iva_pag=(iva-gasto_iva-ret_iva); System. out. println("CALCULO DE IMPUESTOS"); System. out. println("***Tabla de Recibo de Honorarios***"); System. out. println("Ingresos\t\t"+ingreso_tot ); System. out. println("(+) IVA\t\t\t"+iva ); System. out. println("(=) Subtotal\t\t"+subtotal ); System. out. println("(-) Retención ISR\t"+ret_isr ); System. out. println("(-) Retención IVA\t"+ret_iva ); printf ("(=) Total\t\t%.2f\n",total ); System. out. println("***Tabla Ganancias***"); System. out. println("Ingresos\t\t"+ingreso_tot ); System. out. println("(-) Gastos\t\t"+gasto_tot ); System. out. println("(=) Ganancia Bruta\t"+gan_bruta ); System. out. println("(-) ISR\t\t\t"+isr ); System. out. println("(=) Ganancia Neta\t"+gan_neta ); System. out. println("***Tabla ISR***"); System. out. println("ISR\t\t\t"+isr ); System. out. println("(-) ISR Retenido\t"+ret_isr ); System. out. println("(=) ISR a Pagar\t\t"+isr_pag ); System. out. println("***Tabla IVA***"); System. out. println("IVA\t\t\t"+iva ); System. out. println("(-) Gastos IVA\t\t"+gasto_iva ); System. out. println("(-) Retención IVA\t"+ret_iva ); System. out. println("(=) IVA a Pagar\t\t"+iva_pag ); break; case SALIR: ver_menu=0; break; default: System. out. println("Opcion no valida!"); } }while(ver_menu); } }
de antemano gracias
|
|
|
En línea
|
|
|
|
visualfree
Desconectado
Mensajes: 201
|
Joder como se nota que no tienes idea de que es Orientacion a Objetos.... codigo asquerosamente programado y estructurado ... veo punteros y tambien veo printf dando vueltas me parece mucho que te quedaste pegado con c++ .... Saludos...
|
|
|
En línea
|
|
|
|
adastra
Endless Learner
Ex-Staff
Desconectado
Mensajes: 885
http://thehackerway.com/
|
char *meses[MESES]={"Enero","Febrero","Marzo","Abril","Mayo","Junio", "Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre"}; Esta linea es invalida. Sustituir por: String[] meses=new String[]{"Enero","Febrero","Marzo","Abril","Mayo","Junio", "Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre"};
En java no puedes manipular punteros.
|
|
|
En línea
|
|
|
|
m@o_614
Desconectado
Mensajes: 389
|
ya le hice las modificaciones a mi asqueroso codigo y me aparecen errores en donde tengo declaradas leeInt o leeDouble, me dice...leeInt cannot be resolved public class Impuestos { public static void main (String[] args ) { //constantes final double IVA=16.0; final double POR_RET_IVA=10.0; final double POR_RET_ISR=10.0; final double POR_ISR=11.0; final int MES_CAPTURA=1; final int CAPTURA_ING=2; final int CAPTURA_GAS=3; final int L_ING_ANUAL=4; final int L_GASTO_ANUAL=5; final int CALCULO_IMP=6; final int MESES=12; final int SALIR=7; //variables para entrada de datos double gasto_iva,iva_pag,isr_pag,gan_bruta, gan_neta,isr,iva,subtotal,ret_isr,ret_iva,total,ingreso_tot=0,gasto_tot=0,ingreso,gasto; //variables de uso interno del programa int i,opcion,indice,mes_elegido=1; boolean ver_menu; String[] meses =new String[]{"Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre"}; //Arreglo para ingresos y gastos// double gastos[]; double ingresos[]; for(i=0;i<MESES;i++) { gastos[i]=0; ingresos[i]=0; } ver_menu=true; do { System. out. println("CALCULO DE IMPUESTOS ANUAL"); System. out. println("Menu principal:"); System. out. println("1. Establecer mes para la captura (mes actual es %s)"+meses [mes_elegido -1]); System. out. println("2. Captura de ingresos"); System. out. println("3. Captura de gastos"); System. out. println("4. Mostrar lista de ingresos anual"); System. out. println("5. Mostrar lista de gastos anual"); System. out. println("6. Calculo de impuestos anual"); System. out. println("7. Salir"); System. out. println("Opcion: "); opcion=leeInt.ScanF(); System. out. println(" "+opcion ); switch(opcion) { case MES_CAPTURA: System. out. println("Establecer mes para captura"); for(i=0,indice=0;i<MESES;i++,indice++) System. out. println(" "+(indice +1)+") "+meses [i ]); System. out. println("Elige el mes (1 a 12):"); mes_elegido=leeInt.ScanF(); System. out. println(" "+mes_elegido ); if(mes_elegido>MESES) System. out. println("Mes no valido!"); else System. out. println("Se ha establecido el mes de captura en "+meses [mes_elegido -1]); break; case CAPTURA_ING: System. out. println("Captura de ingresos"); System. out. println("Dame el ingreso del mes de "+meses [mes_elegido -1]+": "); ingreso=leeDouble.ScanF(); System. out. println(" "+ingreso ); ingresos[mes_elegido-1]=ingreso; break; case CAPTURA_GAS: System. out. println("Captura de gastos"); System. out. println("Dame el gasto del mes de "+meses [mes_elegido -1]+": "); gasto=leeDouble.ScanF(); System. out. println(" "+gasto ); gastos[mes_elegido-1]=gasto; break; case L_ING_ANUAL: System. out. println("Mostrar lista de ingresos anual"); for(i=0;i<MESES;i++) System. out. println(" "+meses [i ]+" = "+ingresos [i ]); break; case L_GASTO_ANUAL: System. out. println("Mostrar lista de gastos anual"); for(i=0;i<MESES;i++) System. out. println(" "+meses [i ]+" = "+gastos [i ]); break; case CALCULO_IMP: for(i=0;i<MESES;i++) { ingreso_tot+=ingresos[i]; gasto_tot+=gastos[i]; } iva=(ingreso_tot*IVA)/100; subtotal=ingreso_tot+iva; ret_isr=(ingreso_tot*POR_RET_ISR)/100; ret_iva=(ingreso_tot*POR_RET_IVA)/100; total=subtotal-(ret_isr+ret_iva); gan_bruta=(ingreso_tot-gasto_tot); isr=(gan_bruta*POR_ISR)/100; gan_neta=(gan_bruta-isr); isr_pag=(isr-ret_isr); gasto_iva=(gasto_tot*IVA)/100; iva_pag=(iva-gasto_iva-ret_iva); System. out. println("CALCULO DE IMPUESTOS"); System. out. println("***Tabla de Recibo de Honorarios***"); System. out. println("Ingresos\t\t"+ingreso_tot ); System. out. println("(+) IVA\t\t\t"+iva ); System. out. println("(=) Subtotal\t\t"+subtotal ); System. out. println("(-) Retención ISR\t"+ret_isr ); System. out. println("(-) Retención IVA\t"+ret_iva ); System. out. println("(=) Total\t\t"+total ); System. out. println("***Tabla Ganancias***"); System. out. println("Ingresos\t\t"+ingreso_tot ); System. out. println("(-) Gastos\t\t"+gasto_tot ); System. out. println("(=) Ganancia Bruta\t"+gan_bruta ); System. out. println("(-) ISR\t\t\t"+isr ); System. out. println("(=) Ganancia Neta\t"+gan_neta ); System. out. println("***Tabla ISR***"); System. out. println("ISR\t\t\t"+isr ); System. out. println("(-) ISR Retenido\t"+ret_isr ); System. out. println("(=) ISR a Pagar\t\t"+isr_pag ); System. out. println("***Tabla IVA***"); System. out. println("IVA\t\t\t"+iva ); System. out. println("(-) Gastos IVA\t\t"+gasto_iva ); System. out. println("(-) Retención IVA\t"+ret_iva ); System. out. println("(=) IVA a Pagar\t\t"+iva_pag ); break; case SALIR: ver_menu=false; break; default: System. out. println("Opcion no valida!"); } }while(ver_menu); } }
no se si se deba a que tengo adjuntada ScanF en el mismo package que Impuestos
|
|
|
En línea
|
|
|
|
adastra
Endless Learner
Ex-Staff
Desconectado
Mensajes: 885
http://thehackerway.com/
|
Hombre, el error es bastante claro, has intentado resolverlo antes de preguntar? las variables leeInt y leeDouble no estan declaradas en ninguna parte en la clase. El foro esta para hacer preguntas puntuales, no para resolver tareas.
|
|
|
En línea
|
|
|
|
Proteus1989
|
Empieza con algo más sencillo. Buscate problemitas resueltos en java que te ayuden a entender mejor la metodologia de programacion orientada a objetos.
Lo digo como consejo. Ya tu elige lo que mejor veas oportuno.
|
|
|
En línea
|
|
|
|
|
|