|
Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.
Mensajes - Zyteck
Páginas: [1]
1
« en: Miércoles 29 de Septiembre de 2010, 18:36 »
Que tal pues tengo un problema con un codigo pero donde este el problema, el problema es que en el metodo de resultados imprime que el arreglo no tiene datos y no se porque. salu2 import java.util.*; import java.io.*; public class ArregloADPlus{ double AAD[] = new double[30]; double copiaAAD[] = new double[30]; double resp, temp2; int modo, MDC, c1=0; Scanner tecla = new Scanner (System. in); public static final String CENTINELA = "fin"; void inicio(){ System. out. println("Arreglo para ordenar ascendente o descendentemente los valores ingresados"); } void menu(){ ArregloADPlus AADP = new ArregloADPlus(); System. out. println("Ingrese 1 para modo ascendente o 2 para modo descendente"); modo = tecla.nextInt(); if (modo !=1 && modo !=2){ System. out. println("Ingrese 1 o 2"); AADP.menu();} System. out. println("Ingrese como desea introducir los valores"); System. out. println(" 1)Lectura Por teclado n 2)Por Omisionn 3)Lectura De Archivon 4)Aleatorion"); MDC = tecla.nextInt(); } ArregloADPlus AADP = new ArregloADPlus(); switch(MDC){ case 1: AADP.teclado(); break; case 2: AADP.omision(); break; case 3: AADP.archivo(); break; case 4: AADP.aleatorio(); break; default:{ if (MDC<0 || MDC>4) System. out. print("ingrese un valor de 1 al 4n");} } } System. out. println("Ingrese un valor o "fin " para terminar"); temp = entrada.readLine(); while(!temp.equals(CENTINELA)){ resp = Double. parseDouble(temp ); AAD[c1++] = resp; System. out. println("Ingrese una valor o "fin " para terminar"); temp = entrada.readLine();} System. arraycopy(AAD, 0,copiaAAD, 0,AAD. length); } void omision(){ double AAD1[] = {-26.4,12.6,15,24,78.91,.369,74,14,.1248,7845,6941,1.257425,100,964,-1.36,15485,1000,7895,.137,-9784,4597,12,64,7461,.100,3.14,79.01,963.12,20,457.1}; System. arraycopy(AAD1, 0,AAD, 0,AAD1. length); System. arraycopy(AAD1, 0,copiaAAD, 0,AAD1. length); } double archivo() { int i=0; Scanner sc =new Scanner (System. in); System. out. print("Ingrese la ruta del archivo:"); file=sc.nextLine(); System. out. println("Leyendo del archivo:"+file ); if(!file.equals("")) { try { Scanner in =new Scanner (new File(file )); while(in.hasNextLine()) { s=in.nextLine(); AAD [i ++]=Double. parseDouble(s ); System. out. print(", "+AAD [i -1]);} System. arraycopy(AAD, 0,copiaAAD, 0,AAD. length); in.close(); } } else System. out. println("no se pudo abrir el archivo"+file ); return i; } void aleatorio(){ for(int c3=0;c3<AAD.length;c3++){ int tmp =Math. round((float)Math. random()*1000%37767 ); AAD[c3]=(double)tmp;} System. arraycopy(AAD, 0,copiaAAD, 0,AAD. length); } void calcula(){ if (modo == 1){ else{ int i,j; for(i=0,j=AAD.length -1; i<AAD.length/2;i++,j--){ temp2=AAD[i]; AAD[i]=AAD[j]; AAD[j]=temp2;} } } void resultados(){ System. out. println("nnLos valores ingresados son:"); for(int c5=0; c5<AAD.length; c5++){ System. out. print(copiaAAD [c5 ]+", ");} System. out. println("nnLos valores ingresados ordenados son:"); for(int c5=0; c5<AAD.length; c5++){ System. out. print(AAD [c5 ]+", ");} } ArregloADPlus AADP = new ArregloADPlus(); int r='S'; AADP.inicio(); while (r=='s' || r=='S'){ AADP.menu(); AADP.modoCaptura(); AADP.calcula(); AADP.resultados(); System. out. println("nnDesea Ordenar otros elementos s/n"); } }
gracias de antemano
2
« en: Viernes 4 de Diciembre de 2009, 02:56 »
Que tal, pues estoy iniciando en esto de la programacion y tengo un problema con un codigo: el problema dice asi: Los reglamentos de pesca de Saskatchewan imponen un limite a la cantidad total permitida de kilos en un dia de pesca. Supóngase que se planea llevar terminal portátil de computadora en la siguiente salida de pesca y que se necesita un programa que indique cuando se ha excedido dicho limite. Diseñe un algoritmo que primero lea el limite diario en kilos y enseguida lea los valores de entrada, un tras otro(correspondiente a los valores individuales de las pesas pescadas en el orden que se obtienen) e imprima un mensaje en el momento en que el limite se haya excedido. Un peso de 0 indica el fin de los datos y después de que cada pescado se haya registrado, el algoritmo deberá imprimir el peso total que se lleva hasta ese momento. y hasta ahora lo que llevo de codigo es esto: y me arroja error aqui: var=entrada.readLine();import java.util.Scanner; import java.io.*; public class pesca { double suma=0, pes1,lim; Scanner tecla =new Scanner (System. in); void inicio(){ System. out. println("Para notificar al usuario la cantidad pescada o si a excedido el limite"); } void captura(){ System. out. println("Ingrese el limite de kilos"); lim=tecla.nextDouble(); System. out. println("Ingrese el peso de una presa o '0' para terminar"); var=entrada.readLine(); } void calcula(){ if (suma < lim){ while(!var.equals(CENTINELA)){ pes1=pes2.parseDouble(var); suma=suma+pes1; System. out. println("Ingrese el peso de una presa o '0' para terminar"); var=entrada.readLine(); } } else{ System. out. println("EL LIMITE DE KILOS A SIDO EXCEDIDO"); } } void resultados(){ System. out. println("El peso total de la pesca de hoy fue:" +suma +"Kg"); } pesca p=new pesca(); int resp='s'; p.inicio(); while (resp=='s'||resp=='S'){ p.captura(); p.calcula(); p.resultados(); System. out. println("Desea reiniciar el programa? s/n:"); } } }
saludos y gracias de antemano por la ayuda
Páginas: [1]
|
|
|