lunes, 31 de octubre de 2016

Estudiantes(Promedio) (Matriz de objetos)

Primera capa

package Datos;
public class Estudiante {
 private String Nombre;
 private float código;
 private String carrera;
 private String Género;
 private double [] notas;
 public Estudiante(){
  Nombre="";
  código=0;
  carrera="";
  Género="";
  notas=new double[4];
 }
 public Estudiante(String n, float c, String ca,String g, double[]no){
  Nombre=n;
  código=c;
  carrera=ca;
  Género=g;
  notas=no;
 }
 public String getNombre() {
  return Nombre;
 }
 public void setNombre(String nombre) {
  Nombre = nombre;
 }
 public String getGénero() {
  return Género;
 }
 public void setGénero(String género) {
  Género = género;
 }
 public double[] getNotas() {
  return notas;
 }
 public void setNotas(double[] notas) {
  this.notas = notas;
 }
 public float getCódigo() {
  return código;
 }
 public void setCódigo(float código) {
  this.código = código;
 }
 public String getCarrera() {
  return carrera;
 }
 public void setCarrera(String carrera) {
  this.carrera = carrera;
 }


}
---------------------------------------------------------------------------------------------------------------------------
Segunda capa

package Logica;
import java.util.Scanner;
import javax.swing.JOptionPane;
import Datos.Estudiante;
public class Logicaes {
 Scanner kai= new Scanner(System.in);
 public void Llenar(){
  Estudiante  e1[]=new Estudiante[3];//esta será la matriz de objetos
  ///e1[0].setNombre(kai.nextLine()); se puede hacer de esta manera aún dentro del for, pero es mejor usar el método de sobrecarga, que es el siguiente
  String Nombre, Género, carrera;
  float código;
  double[] notas= new double[4];
  for(int i=0; i<e1.length; i++){
   System.out.println("Ingrese el nombre del estudiante "+i);
   Nombre=kai.nextLine();
   System.out.println("Ingrese el género del estudiante "+i);
   Género=kai.nextLine();
   System.out.println("Ingrese su código ");
   código=kai.nextFloat();
   System.out.println("Ingrese su carrera");
   carrera=kai.nextLine();
   kai.nextLine();
   for(int j=0;j<notas.length;j++){
    System.out.println("Ingrese la nota número "+j);
    notas [j]=kai.nextDouble();
   }
   e1[i]=new Estudiante(Nombre,código, carrera, Género, notas);
   kai.nextLine();
  }
 
  Mostrar(e1);
 }
 public void Mostrar(Estudiante[] e1){
  double suma=0;
  for(int i=0; i< e1.length;i++){
   double[] matriz=new double[4];
   matriz=e1[i].getNotas();
   for (int j=0;j<matriz.length;j++){
    suma=suma+matriz[j];
   }
   System.out.println(e1[i].getNombre()+" "+e1[i].getGénero()+" "+e1[i].getCódigo()+" "+e1[i].getCarrera()+" "+suma+ " ");
  }
 }
}

---------------------------------------------------------------------------------------------------------------------------
Tercer capa

package Interfaz;
import Logica.Logicaes;
public class Clasep {
 public static void main(String[]args){
  Logicaes l=new Logicaes();
  l.Llenar();
 }
}



viernes, 28 de octubre de 2016

Pruebas

Para hacer una clase de prueba en java tenemos el siguiente ejemplo en el que el programa falla:

Ejemplo 1

Clase 1

public class calculadora {
    int resultado;
    public int sumar (int sum1, int sum2){
        resultado= sum1+ sum2;
        return resultado;
       
    }
    public int restar (int sum1, int sum2){
        resultado= sum1- sum2;
        return resultado;
       
    }
    public int borrar (){
        resultado=0;
        return resultado;
    }
}
Clase 2

import static org.junit.Assert.*;

import org.junit.Test;

public class calculadoraTest {

    @Test
    public void testSumar() {
        fail("Not yet implemented");
    }

    @Test
    public void testRestar() {
        fail("Not yet implemented");
    }

    @Test
    public void testBorrar() {
        fail("Not yet implemented");
    }

}

---------------------------------------------------------------
Al arreglarlo tenemos la misma clase pricipal y la siguiente en la clase 2:

import static org.junit.Assert.*;

import org.junit.Test;
import org.junit.*;
public class calculadoraTest {
    calculadora cal;
    @Test
    public void testSumar() {
        int esperado= cal.sumar(5, 8);
        int actual=13;
        assertEquals(esperado,actual);
    }

    @Test
    public void testRestar() {
        assertEquals(cal.restar(5, 3),2);
    }

    @After
    public void testBorrar() {
        System.out.println("Después");
        System.out.println(cal.borrar());
    }
    @Before
    public void testantes() {
        cal= new calculadora();
        System.out.println("Antes");
       
    }

}

Contacto (Matriz)

Este es un ejemplo de una matriz de objetos.


Primer capa

public class Contacto {
    String nombre;
    String apellido;
    int edad;
    public String getNombre() {
        return nombre;
    }
    public void setNombre(String nombre) {
        this.nombre = nombre;
    }
    public String getApellido() {
        return apellido;
    }
    public void setApellido(String apellido) {
        this.apellido = apellido;
    }
    public int getEdad() {
        return edad;
    }
    public void setEdad(int edad) {
        this.edad = edad;
    }
   
}

Segunda clase


import java. util.Scanner;
public class Ejemploarreglo {
    public static void main (String[]args){
        Scanner kai= new Scanner(System.in);
        Contacto [] c = new Contacto [2];
        for (int j=0; j<c.length;j++){
        c[j]= new Contacto();
      
        System.out.println("Ingresa nombre "+ j);
        c[j].setNombre(kai.nextLine());      
        System.out.println("Ingresa apellido "+ j);
        c[j].setApellido(kai.nextLine());
        System.out.println("Ingresa edad "+ j);
        c[j].setEdad(kai.nextInt());
      
      
      
        }
      
        for (int i=0; i<c.length; i++){
            System.out.println(c[i].getNombre()+"\t"+c[i].getApellido()+"\t"+c[i].getEdad());
        }
    }
}




viernes, 21 de octubre de 2016

Estudiantes (j.option)

Primera clase

package Datos;

public class estudiante {
private String nombre;
private int edad;
private int semestre;
private Double[][] notas;

public estudiante(){
nombre= "";
edad =0;
semestre=0;
}
public String getNombre() {
return nombre;
}
public void setNombre(String nombre) {
this.nombre = nombre;
}
public int getEdad() {
return edad;
}
public void setEdad(int edad) {
this.edad = edad;
}
public int getSemestre() {
return semestre;
}
public void setSemestre(int semestre) {
this.semestre = semestre;
}
public Double[][] getNotas() {
return notas;
}
public void setNotas(Double[][] notas) {
this.notas = notas;
}
}
-------------------------------------------------------------------------
Segunda clase

package Logica;
import java.util.Scanner;
import javax.swing.JOptionPane;

import Datos.estudiante;

public class lgica {
estudiante est= new estudiante();
estudiante veobj;

public void Menup(){

boolean again=true;
JOptionPane.showMessageDialog(null, "Buenas Tardes, bienvenido a la base de datos estudiantil.");
while (again==true){

String ax = JOptionPane.showInputDialog("Ingrese un numero de estudiantes: ");

int opc = JOptionPane.showConfirmDialog(null,"El numero ingresado es: "+ax+"¿Esto es verdadero?");
       if(opc == JOptionPane.YES_OPTION){
           JOptionPane.showMessageDialog(null, "Has seleccionado SI.");
           again=false;
       String nombre = JOptionPane.showInputDialog("Ingrese el nombre del primer estudiante: ");
     
     
     
     
       }
       else if(opc == JOptionPane.NO_OPTION){
           JOptionPane.showMessageDialog(null, "Has seleccionado NO.");
       }
}
}
}

----------------------------------------------------------------------------------
Tercer capa


package Presentación;
import javax.swing.JOptionPane;

import Logica.lgica;

public class rum {
public static void main(String[]args){
lgica l= new lgica();
l.Menup();

}

}


Servicio de internet

Ejercicio de contenedoras que simula un café intenet.

Primera clase

package datos;

public class datos {
private String[] [] computador;


public String[][] getComputador() {
return computador;
}

public void setComputador(String[][] computador) {
this.computador = computador;
}

}
-----------------------------------------------------------------------
Segunda Clase

package logica;
import datos.datos;

import java.util.Calendar;
import java.util.GregorianCalendar;
import java .util.Scanner;
public class logica {
static String[][] computador= new String[3][3];
static Calendar calendario = Calendar.getInstance();

datos d= new datos();
Scanner kai= new Scanner(System.in);
public void llenarcontenedora(){

for (int i=0; i < computador.length; i++) {
   
        computador[i][1]="Libre";

     
   }
d.setComputador(computador);

//Asignar(d.getComputador());
//Mostrar (d.getComputador());
}

public void Asignar(){
Calendar calendario = new GregorianCalendar();
int hora, minuto, segundo;
hora =calendario.get(Calendar.HOUR_OF_DAY);
minuto = calendario.get(Calendar.MINUTE);
segundo= calendario.get(Calendar.SECOND);
boolean again=true;
//double i;
while (again==true){
int random= (int) (Math.random()*3+0);
System.out.println("Este es el random "+random);
if(computador[random][1].equals("Libre")){
//long Tiempo=System.currentTimeMillis(); esto da en milisegundoas
//String strLong = Long.toString(Tiempo);
again=false;
computador[random][1]="Ocupado";
System.out.println("Ingrese su nombre, por favor");
computador[random][0]= kai.nextLine();
System.out.println("Ingrese la hora, por favor");
computador[random][2]=(hora+":"+ minuto+":"+segundo);//strLong ;//kai.nextLine();
//i=Double.parseDouble(com[random][3]);

}
else{
System.out.println("Otra vez");
again=true;
}
}
Mostrar(computador);

}


public void Mostrar(String[][] datos){
System.out.println("Estos son los datos que has ingresado. \n");

for (int i=0; i < datos.length; i++) {
       for (int j=0; j < datos[i].length; j++) {
           System.out.print(datos[i][j]+"\t");
       }
       System.out.println("");
   }
}
public double Recibo(int hora1, int min1, int seg1){
Calendar calendario = new GregorianCalendar();
int horas, minutos, segundos;
horas =calendario.get(Calendar.HOUR_OF_DAY);
minutos = calendario.get(Calendar.MINUTE);
segundos= calendario.get(Calendar.SECOND);
double Total = 0;
int random2= (int) (Math.random()*3+0);
String Nombre;
System.out.println("Digite su nombre");
Nombre = kai.next();
boolean again3=true;
while (again3==true){
if(computador[random2][0].equals(Nombre)){
int hotat= hora1-horas;
int mint=minutos-min1;
int segt=segundos-seg1;
System.out.println("Digite la hora de salida");


}

}
return Total;

}

}

-----------------------------------------------------------------------------------

Tercera clase


package interfaz;
import java.util.Scanner;

import datos.datos;
import logica.logica;

public class presentacion {

public static void main(String[]args){
Scanner kai= new Scanner(System.in);
logica l= new logica();
datos d= new datos();
l.llenarcontenedora();
boolean again=true;
while(again=true){
System.out.println("¡Hola!, bienvenido  ");
System.out.println("Seleccione qué desea hacer: ");
System.out.println("<1> Usar un computador");
System.out.println("<2> Saber mi recibo");
System.out.println("<3> Salir");
int opc=kai.nextInt();
switch(opc){
case 1:

l.Asignar();
//l.Mostrar(d.getComputador());


break;
case 2:
l.Recibo(0, 0, 0);
break;
case 3:
again=false;
break;

}

}

}
}

Wrappers

Esta es una muestra de Wrappers

Primera clase

public class ClaseEnvolvente {

private Integer int1= new Integer(42);
private Integer int2= new Integer("42");

//Tipo Boolean

private Boolean bool1= new Boolean(true);
private Boolean bool2= new Boolean("true");

//Tipo Character

//private Character char1= new Character(a);//Como se puede ver al quitar el slash, no se puede hacer de esta manera, solamente ecibe un caracter String
private Character char2=new Character('a');//Importantes las comillas
public Integer getInt1() {
return int1;
}
public void setInt1(Integer int1) {
this.int1 = int1;
}
public Integer getInt2() {
return int2;
}
public void setInt2(Integer int2) {
this.int2 = int2;
}
public Boolean getBool1() {
return bool1;
}
public void setBool1(Boolean bool1) {
this.bool1 = bool1;
}
public Boolean getBool2() {
return bool2;
}
public void setBool2(Boolean bool2) {
this.bool2 = bool2;
}

public Character getChar2() {
return char2;
}
public void setChar2(Character char2) {
this.char2 = char2;
}




}
----------------------------------------------------------------
Segunda clase

public class RunEnvolv {

public static void main(String[]args){
ClaseEnvolvente clas=new ClaseEnvolvente ();
int x= clas.getInt1(). intValue();
int y=clas.getInt2(). intValue();
int i=Integer.parseInt("123");
Float fl1= Float.valueOf("3.14f");
System.out.println("El valor  del int1 es: "+ x);
System.out.println("El valor  del int2 es: "+ y);
System.out.println("Del parse int da "+ i);
System.out.println("Al sumarlo con el valor int 1: "+(x+i));
}
}

Bingo

Capa número 1


package Interface;

import Datos.Cartón;
import Lógica.LógicaBingo;

public class Bingorum {
static LógicaBingo l=new LógicaBingo();
public static void main(String[]args){
String [][] c=new String[3][3];
Cartón c1=new Cartón();

l.Bingo(c);
System.out.println("Este es tu cartón:");
}
}

---------------------------------------------------------------------
Capa número 2

package Lógica;
import java.util.Scanner;

import Datos.Cartón;
import Datos.datos;

public class LógicaBingo {
Cartón c1=new Cartón();
Cartón c2=new Cartón();
datos d= new datos(null, null, 0);
Scanner kai= new Scanner(System.in);
public void ValRandom(){
d.setValR((int) Math.random()*100+1);
}

public void  Bingo(String [][] nom){

boolean Again=true;
int c=0;
while (Again==true){
System.out.println("¡Hola!, por favor digita tu nombre ");
d.setUsuario(kai.nextLine());
System.out.println("Bueno, "+d.getUsuario()+". Selecciona qué deseas hacer: ");
System.out.println("<1> Comprar un cartón nuevo");
System.out.println("<2> Salir");
int opc= kai.nextInt();
switch(opc){
case 1:
if(c==1){
llenar(c2);

}
else{
llenar(c1);


//Verificar(d.getCartón());
}
break;
case 2: System.out.println("Has seleccionado salir ");

Again=false;
break;
}

}
}
public void llenar(Cartón c12){
String [] [] Bin= new String [0][5];
Bin[0][0]= "B";
Bin[0][1]= "I";
Bin[0][2]= "N";
Bin[0][3]= "G";
Bin[0][4]= "O";
for(int l=1; l<Bin.length; l++){
for (int j=0; j < Bin[l].length; j++) {
Bin[l][j]= kai.nextLine();
}
}

Mostrar(Bin);
}
public void Mostrar(String[][] datos){
System.out.println("Estos son los datos que has ingresado. \n");

for (int i=0; i < datos.length; i++) {
       for (int j=0; j < datos[i].length; j++) {
           System.out.print(datos[i][j]+"\t");
       }
       System.out.println("");
   }
}
//public void Verificar(String [][] datos){

// for (int i=0; i < datos.length; i++) {
 //      for (int j=0; j < datos[i].length; j++) {
   //        System.out.print(datos[i][j]+"\t");
     //  }
       //System.out.println("");
  // }
//}
}

--------------------------------------------------------------------------------------
Capa número 3

package interfaz;
import java.util.Scanner;

import datos.datos;
import logica.logica;

public class presentacion {
public static void main(String[]args){
Scanner kai= new Scanner(System.in);
logica l= new logica();
datos d= new datos();
l.llenarcontenedora();
boolean again=true;
while(again=true){
System.out.println("¡Hola!, bienvenido  ");
System.out.println("Seleccione qué desea hacer: ");
System.out.println("<1> Usar un computador");
System.out.println("<2> Saber mi recibo");
System.out.println("<3> Salir");
int opc=kai.nextInt();
switch(opc){
case 1: 
l.Asignar();
//l.Mostrar(d.getComputador());
break;
case 2:
l.Recibo(0, 0, 0);
break;
case 3:
again=false;
break;
}
}
}
}

sábado, 1 de octubre de 2016

Contedoras (Estudiante)

Primera capa


package Datos;
public class Estudiante {

 private String[][] datos;

 public String[][] getDatos() {
  return datos;
 }
 public void setDatos(String [][]datos) {
  this.datos= datos;
 }



}

Segunda capa


package Logica;
import java.util.Scanner;
import Datos.Estudiante;
public class LogicaEstudiante {
 Estudiante e= new Estudiante();


  Scanner kai=new Scanner(System.in);
  public void Pedir(){
  
   System.out.println("¡Hola!\nEscribe el número de estudiantes de los cuales quieres ingresar los datos:");
   int indice=kai.nextInt();
   String[][] DEstu =new String[indice][3];
  
     for (int i=0; i < DEstu.length; i++) {
          // for (int j=0; j < mUnidad[i].length; j++) {
            System.out.println("Ingresa el nombre del estudiante "+ (i+1)+ " posiciòn: "+ 1);DEstu[i][0]=kai.next();
      System.out.println("Ingresa el edad del estudiante "+ (i+1)+ " posiciòn: "+ 2);DEstu[i][1]=kai.next();
      System.out.println("Ingresa el documento del estudiante "+( i+1)+ " posiciòn: "+ 3);DEstu[i][2]=kai.next();
         //  }
       }
   e.setDatos(DEstu);
   Mostrar (e.getDatos());
  }
  
  
 
  public void Mostrar(String[][] datos){
   System.out.println("Estos son los datos que has ingresado. \n");
  
    for (int i=0; i < datos.length; i++) {
           for (int j=0; j < datos[i].length; j++) {
               System.out.print(datos[i][j]+"\t");
           }
           System.out.println("");
       }
  }

}

Tercera capa


package Interfaz;
import Logica.LogicaEstudiante;
public class Interstu  {
 public static void main(String[]args){
  LogicaEstudiante l =new LogicaEstudiante();
  l.Pedir();
 }
}