Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - Mitsu

#1
Entonces crea tu clase e implementa algunos métodos como push, pop, remove, etc. En cualquier problema, antes de pedir ayuda, primero trata hasta lo último de hacerlo por tí mismo. Intenta hacerlo y si no puedes en algunas cosillas crea un tema. Es por demás, nadie te va a hacer la tarea.

Salu2.
#2
Empieza aprendiendo a usar la clase LinkedList que te ayudará bastante. Luego pones tus avances para que te ayuden.
#3
Java / Re: [Ayuda]Resulset a Cliente
6 Abril 2014, 16:12 PM
Podrías ser más explícito no? Si lanza excepciones, si no muestra nada, etc.
#4
No sé si será lo más recomendable, tampoco programo para Android (quizás con JavaFX lo haga), pero siempre veo que utilizan la clase View y Canvas, así que supongo será lo estándar.
#5
Código (=java) [Seleccionar]

Paint painter = new Paint(Paint.ANTI_ALIAS_FLAG); // anti alias necesario si se usa en Android
paint.setColor(Color.RED); // color del pincel
paint.setStrokeWidth(2); // ancho del pincel
paint.setStyle(Paint.Style.STROKE); // estilo del pincel
#6
Java / Re: El código no va....
6 Abril 2014, 15:59 PM
Es un algoritmo muy sencillo, puedes hacerlo con matrices así:

Código (=java) [Seleccionar]

import java.util.Scanner;

public class NotaSys {
 Scanner read;
 
 public Object[][] fillStudents() {
   read = new Scanner(System.in);
   System.out.println("Cuantos alumnos desea procesar?");
   int cant_stud = read.nextInt();
   System.out.println("Cuantas notas se van a promediar?");
   int cant_calif = read.nextInt();
   Object[][] students = new Object[cant_stud][cant_calif+1];
   
   for(byte i=0; i<students.length; i++) {
     for(byte k=0; k<students[i].length; i++) {
       if(k==0) {
         System.out.println("Ingrese el nombre del alumno:");
         students[i][k] = read.nextLine();
         read.next();
       }
       else {
         System.out.println("Ingrese la nota del alumno:");
         students[i][k] = read.nextInt();
       }
     }
   }
   return students;
 }
   
   public Object[][] getAverage(Object[][] students) {
     
     Object[][] average = new Object[students.length][2];
     for(byte i=0; i<students.length; i++) {
       double total = 0d; // suma las notas
       for(byte k=0; k<students[i].length; i++) {
         if(k!=0) {
           total += students[i][k];
         }
         if(k==students[i].length) {
           average[i][0] = students[i][0]; // guarda el nombre
           average[i][k] = total / students[i].length-1; // y el promedio
         }
       }
     }
     return average;
   }
   
   public double getMaxAverage(Object average[][]) {
     double max = 0d;
     double prom = average[0][1];
     
     for(byte i=0; i<average.length; i++) {
       for(byte k=0; k<average.length; i++) {
         if(k!=0) {
           if(average[i][k] > prom) {
             max = prom;
           }
         }
       }
     }
     return max;
   }
   
   public byte getApproved(Object[][] average) {
     byte cant = 0;
     for(byte i=0; i<average.length; i++) {
       for(byte k=0; k<average.length; i++) {
         if(k!=0) {
           if(k > 4.5) {
             cant++;
           }
         }
       }
     }
     return cant;
   }
     
   public byte getApprovedPlus8(Object[][] average) {
     byte cant = 0;
     for(byte i=0; i<average.length; i++) {
       for(byte k=0; k<average.length; i++) {
         if(k!=0) {
           if(k > 8) {
             cant++;
           }
         }
       }
     }
     return cant;
   }
   
   public byte getDisapproved(Object[][] average) {
     byte cant = 0;
     for(byte i=0; i<average.length; i++) {
       for(byte k=0; k<average.length; i++) {
         if(k!=0) {
           if(k < 4.5) {
             cant++;
           }
         }
       }
     }
     return cant;
   }
   
   public static void main(String[] args) {
     NotaSys n = new NotaSys();
     Object[][] myStudents = n.fillStudents();
     Object[][] average = n.getAverage();
     double max = n.getMaxAverage(average);
     double cant_approved = n.getApproved(average);
     double approved8 = n.getApprovedPlus8(average);
     double disapproved = n.getDisapproved(average);
     
     // imprimes
   }


 }


Lo he hecho en un editor de texto así que quizás tiene algunos errores pero la idea es esa. Salu2.
#7
Hmm por lo que veo fallan algunos conceptos básicos que debes tener. Debes de darte cuenta que el error en el método te lo da porque no has importado la clase java.util.List. Y en la línea int cuadril = ? no es una línea de código, te pongo el '?' porque ese método debe de usarse luego que ya se hallado el cuadril. Para ésto crea una variable llamada cuadril y en el método que detecta el cuadril, asígnale el cuadril detectado a la variable. Hay que aprender a leer los errores que te da el IDE.

Salu2.
#8
Qué hay Darhius, Supongo que es un soft de Historia xD

Si es así, yo haría lo siguiente:

  • 2 RadioButtons: A.C. / D.C.
  • Comprobar si lo ingresado es un entero.
  • Si se elige D.C. Obviamente limitar al año actual.
  • Comprobar si se ingresa un entero negativo.
  • Si se ingresan ceros, eliminar los ceros a la izquierda y ésta fecha acondicionarla para D.C. Ej: 0010 -> 10 D.C.

    Seguro se me ocurren otras cosillas por ahí. Salu2 xD
#9
Hay muchos métodos para ordenar un arreglo, tienes el quicksort, la burbuja, etc.

Si quieres algo rápido, puedes usar el método sort de List, para ésto tendrías que convertir el array a List:

Código (=java) [Seleccionar]

public static List<Integer> getSortList(int[] serie) {
// se supone que hasta aqui ya hemos encontrado nuestro cuadril
int cuadril = ?
List<Integer> serie2list = Arrays.asList(serie); // convierte a List el array serie que contiene los numeros
serie2list.remove("cuadril"); // elimina el cuadril momentaneamente
serie2list.sort(); // ordena la lista
serie2list.add(0,cuadril); // agrega el cuadril en la primera posicion

return serie2list;
}

// imprime la lista ordenada con el cuadril en el primer lugar
for(Integer i : getSortList(serie)) {
System.out.print(i+" ");
}


También puedes convertir una List a Array con el método toArray(). Ej:

Código (=java) [Seleccionar]

Object[] array = getSortList(serie).toArray();



Salu2.
#10
Según lo entiendo yo, ésto es así:

Ingresar una serie de números mayor o igual a 1 y menor o igual a 1000.

Código (=java) [Seleccionar]

Scanner read = new Scanner(System.in);
System.out.println("Ingrese una serie de números enteros");
String numeros = read.nextLine();


Convertimos los números a enteros:

Código (=java) [Seleccionar]

String[] numeroserie = numeros.split(" ");
int[] serie = new int[numeroserie.length];

try {
for(int i=0; i<numeroserie.length; i++) {
serie[i] = Integer.parseInt(numeroserie[i]);
}
} catch(NumberFormatException ex) {
ex.printStackTrace();
}


Sacamos el total y el porcentaje que pide:

Código (=java) [Seleccionar]

int total = 0;
for(int i=0; i<serie.length; i++) {
total += serie[i];
}

int porcentaje = 25 * total / 100;


Creamos un método para determinar el menor de la serie:

Código (=java) [Seleccionar]

public int getMenor(int... numeros) {
int menor = numeros[0];
for(int number : numeros) {
if(number < menor) {
menor = number;
}
}
return menor;
}


Ahora ya sabemos quién es el cuadril, en caso no alcance por ser mayor al 25% descartas ese número y sigues con el 2do menor, y así...


Luego para ordenar la lista es muy sencillo, debes de saberlo. Recorres la nueva lista en un for e imprimes con un espacio intermedio.


Salu2.