martes, 29 de agosto de 2017

Simulaciones Probabilisticas Correlacionales

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package simulacion;

import java.awt.Canvas;
import java.awt.Frame;
import java.awt.Graphics;
import java.awt.Image;
import java.text.DecimalFormat;
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.ThreadLocalRandom;
import javax.swing.ImageIcon;

/**
 *
 * @author m
 */
public class Imagen extends Canvas {
    List x=new ArrayList<Integer>();
    List y=new ArrayList<Integer>();
 
 
    Image i,ii;
 
    public void generarX(){
        int respuesta=0;
        for(int a=0;a<=100;a++){
             // int c=TheadLocalRandom.current().nexInt(10,100);
             respuesta = ThreadLocalRandom.current().nextInt(10,150);
            x.add(respuesta);
        }
    }
    public void generarY(){
        int respuesta=0;
        for(int a=0;a<=100;a++){
            respuesta = ThreadLocalRandom.current().nextInt(10,150);
            y.add(respuesta);
        }
    }
    public Imagen(){
        generarX();
        generarY();
        ii=new ImageIcon("uno.jpg").getImage();
        i=new ImageIcon("dos.jpg").getImage();
     
    }
 
    public void paint(Graphics g){
        int c=0,n=0;
        float p=0,p1=0;
        String q,qq;
        g.drawImage(i, 10, 10, null);
        g.drawImage(ii, 250, 10, null);
        for(int a=0;a<100;a++){
            q=String.valueOf(x.get(a));
            qq=String.valueOf(y.get(a));
            int num=Integer.parseInt(q);
            int num2=Integer.parseInt(qq);
         
            if(num>0 &&num<=50 && num2>0 &&num2<=50){
               c++;
         
            }else{
                n++;
            }
         
       // g.fillOval(Integer.parseInt(q),Integer.parseInt(qq), 16, 16);  
        g.drawOval(num,num2, 6, 6);
        g.drawRect(0, 0, 50, 50);
    }
        p=((c)%((c)+(n)));
          p1=((n)%((c)+(n)));
  System.out.println("Calleron ---> "+c+" y se salieron ---->"
          + " "+n+"\n\n y la probabilidad de positivos es -->"
          + " "+p+"\n\n la probabilidad de los negativos es ---> "+p1);
   
    }
 
 
    public static void main(String[] args) {
        Frame f= new Frame();
        f.add(new Imagen());
        f.setSize(600, 300);
        f.setVisible(true);
     
    }
 
}

jueves, 24 de agosto de 2017

Canvas Imagenes

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package simulacion;

import java.awt.Canvas;
import java.awt.Frame;
import java.awt.Graphics;
import java.awt.Image;
import java.text.DecimalFormat;
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.ThreadLocalRandom;
import javax.swing.ImageIcon;

/**
 *
 * @author m
 */
public class Imagen extends Canvas {
    List x=new ArrayList<Integer>();
    List y=new ArrayList<Integer>();
   
   
    Image i,ii;
   
    public void generarX(){
        int respuesta=0;
        for(int a=0;a<100;a++){
             // int c=TheadLocalRandom.current().nexInt(10,100);
             respuesta = ThreadLocalRandom.current().nextInt(10,150);
            x.add(respuesta);
        }
    }
    public void generarY(){
        int respuesta=0;
        for(int a=0;a<100;a++){
            respuesta = ThreadLocalRandom.current().nextInt(10,150);
            y.add(respuesta);
        }
    }
    public Imagen(){
        generarX();
        generarY();
        ii=new ImageIcon("uno.jpg").getImage();
        i=new ImageIcon("dos.jpg").getImage();
       
    }
   
    public void paint(Graphics g){
        g.drawImage(i, 10, 10, null);
        g.drawImage(ii, 250, 10, null);
        for(int a=0;a<=100;a++){
            String q=String.valueOf(x.get(a));
            String qq=String.valueOf(y.get(a));
           
        g.fillOval(Integer.parseInt(q),Integer.parseInt(qq), 8, 8);
       
    }
 
     
    }
   
   
    public static void main(String[] args) {
        Frame f= new Frame();
        f.add(new Imagen());
        f.setSize(600, 300);
        f.setVisible(true);
       
    }
   
}



miércoles, 23 de agosto de 2017

Canvas

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package simulacion;

import java.awt.Canvas;
import java.awt.Color;
import java.awt.Frame;
import java.awt.Graphics;
import java.awt.Image;
import javax.swing.ImageIcon;

/**
 *
 * @author m
 */
public class Imagen extends Canvas {
   
    Image i;
   
    public Imagen(){
        i=new ImageIcon("dd.jpg").getImage();
    }
    public void paint(Graphics g){
        g.drawImage(i, 80, 80, null);
 
     
    }
   
    public static void main(String[] args) {
        Frame f= new Frame();
        f.add(new Imagen());
        f.setSize(800, 800);
        f.setVisible(true);
       
    }
   
}

martes, 22 de agosto de 2017

simulacion

                                                                 Método de Monte Carlo

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package simulacion;

import java.text.DecimalFormat;

/**
 *
 * @author m
 */
public class MetodoMontecarlo {
   
    public static void main(String[] args) {
        MetodoMontecarlo m=new MetodoMontecarlo();
       
        for(int x=0;x<=100;x++){
         
            System.out.println("Numero seudoaleatorios "+x+" -----> "+m.Metodo());
        }
       
    }
   
    public int Metodo(){
        int respuesta=0;
        double x=Math.random();
         DecimalFormat d=new DecimalFormat("#.000");
         String n=d.format(x);
         float c=Float.parseFloat(n);
         if(c<=0 || c<=0.125){
             respuesta=1;
         }else if(c<=0.125 || c<=0.250){
             respuesta=2;
         }else if(c<=0.250 || c<=0.375){
             respuesta=3;
         }else if(c<=0.375 || c<=0.5){
             respuesta=4;
         }else if(c<=0.5 || c<=0.625){
             respuesta=5;
         }else if(c<=0.625 || c<=0.750){
             respuesta=6;
         }else if(c<=0.750 || c<=0.875){
             respuesta=7;
         }else if(c<=0.875 || c<=1){
             respuesta=8;
         }
       
        return respuesta;
    }
   
}



                                                           Método Mixto


/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package simulacion;

/**
 *
 * @author m
 */
public class MetodoMixto {
   
    public static void main(String[] args) {
        int xx=8;
        MetodoMixto m=new MetodoMixto();
        for(int y=0;y<=100;y++){
            xx=m.Metodo(xx);
        System.out.println("Numero seudoaleatorios "+y+" -----> "+m.Metodo(xx));
        }
    }
   
   
    public int Metodo(int y){
       
         int a=3,x,xx;
         int c=6;
         int m=7;
         int xn=y;
     
         x=((a*(xn))+c);
          xx=x%m;
     
         return xx;
    }
   
}

jueves, 15 de junio de 2017

VISTAS

                                                                     Estructura de las VISTAS

Una vista es un objecto de la base de datos que se define mediante una SELECT que agrupa o selecciona un conjunto de datos. Para crear una vista lo primero que tenemos que ver es si nuestro usuario asignado a la base de datos tiene permisos para crear vistas (create view).

EJEMPLO:

create View "EL NOMBRE DE TU VISTA" As "EL QUERY A EJECUTAR"

>En pocas palabras una vista es una tabla donde se almacenan los resultados de un select.

>un ejemplo de una vista llamada "nueva" , utilizando una tabla llamada "productos":


create View nueva As select * from productos where precio>100;

>La vista creada almacenara todos los registros arrogados por el select, el select arrogara todos los productos donde su precio supere los 100 y se almacenaran el la vista "nueva".

TRIGGERS

                                            Estructura TRIGGERS  (DISPARADORES)



Un trigger o disparador en una Base de datos , es un procedimiento que se ejecuta cuando se cumple una condición establecida al realizar una operación. Dependiendo de la base de datos, los triggers pueden ser de inserción (INSERT), actualización (UPDATE) o borrado (DELETE). Algunas bases de datos pueden ejecutar triggers al crear, borrar o editar usuarios, tablas, bases de datos u otros objetos.


Los triggers son usados para mejorar la administración de la Base de datos, sin necesidad de contar con que el usuario ejecute sentencias determinadas para tal efecto. Además, pueden generar valores de columnas, pueden prevenir errores de datos, sincronizar tablas, modificar valores de una vista, auditorias de seguridad, etc.

EJEMPLOS:

DELIMITER //

create trigger "NOMBRE QUE SE ASIGNARA AL TRIGGER"  "AQUI VA LO QUE NESESITAS SEGUN SE UN after ,before," "Y AQUI LO QUE SE NESESITE SEGUN SEA  update,delete,select,insert" "Y AQUI EL NOMBRE DE LA TABLA A LA QUE QUIERES LIGAR EL TRIGGER"

for each row

BEGIN
"
....
....
"AQUI LAS CONDICIONES O LO QUE VA A REALIZAR EL TRIGGER"
.....
,,,,,
"

END //

DELIMITER ;
 
> Esa es la estructura basica de un trigger, para que quede mejor explicado o entendible se realizara un ejemplo con un trigger llamado ejemplo y con una tabla llena de datos  llamada "productos"  y una vacia (es en la cual se colocara los resultados) llamada "resultados" que tiene como parametros(id,nombre,tipo,fecha:

DELIMITER //

create trigger ejemplo before insert on Productos

for each row

BEGIN

insert into resultados(nombre,tipo,fecha)values(NEW.nombre,NEW.id,NEW.tipo,now());

END //

DELIMITER ;


>Con la ejecución de este trigger le estamos diciendo que antes de que haga insert en la tabla de productos inserte primero en la tabla de resultados el nombre,id,tipo y la fecha del día de la inserción y después de insertar en resultados ahora si puede insertar en la tabla de productos.

STORED PROCEDURE

                                                     Estructura  STORED PROCEDURE




Un procedimiento almacenado (stored procedure en inglés) es un programa (o procedimiento) el cual es almacenado físicamente en una base de datos. Su implementación varía de un gestor de bases de datos a otro. La ventaja de un procedimiento almacenado es que al ser ejecutado, en respuesta a una petición de usuario, es ejecutado directamente en el motor de bases de datos, el cual usualmente corre en un servidor separado. Como tal, posee acceso directo a los datos que necesita manipular y sólo necesita enviar sus resultados de regreso al usuario, deshaciéndose de la sobrecarga resultante de comunicar grandes cantidades de datos salientes y entrantes.

EJEMPLOS:

DELIMITER //

CREATE PROCEDURE "NOMBRE DEL STORED PROCEDURE"(VARIABLES DE ENTRADA (IN) O SALIDA (OUT) SEGUN SE OCUPEN)

BEGIN
"....
......
......
.....
"Condiciones o querys que deces que guarde el stored procedure"
...
....."

END//

DELIMITER ;

> Basicamente es esa la estructura de un stored procedure pero hare un ejemplo de un stored procedure  llamado "ejemplo" con respecto a una tabla llamada "productos":

DELIMITER //

create procedure ejemplo(IN id integer,OUT nombre varchar(100))

BEGIN

select p,nombre into nombre from Productos where p.id=id;

END //

DELIMITER ;

> con este ejemplo lo que hicimos fue crear un stored procedure con una variable de entrada y otra de salida donde nos retornara el nombre del producto donde el producto tenga el id igual al ingresado.

>Para acceder a lo que retorna el stored procedure se ejecuta el siguiente comando:

call ejemplo(5,@s);

>Con esto le damos el id que es el numero 5 y la variable donde queremos queremos que almacene lo que retorne.

>Para visualizarlo solo se ejecuta lo sigiente:

select @s;

>con eso podremos visualizar lo que retorna el stored procedure.