miércoles, 24 de junio de 2009

Prueba




package prueba;

import javax.swing.JApplet;
import java.awt.Color;
import java.awt.Graphics;
import javax.swing.JOptionPane;

/**
*
* @author program
*/
public class Prueba extends JApplet {
public void init() {

}
// TODO start asynchronous download of heavy resources
public void paint(Graphics g){

g.drawOval(100, 50, 100, 100);
//g.drawLine(150, 100, 120, 60);
//g.drawLine(150, 100, 200, 100);
//String aux = JOptionPane.showInputDialog(null,"INGRESE EL VALOR DE LA TEMPERATURA","titulo",JOptionPane.DEFAULT_OPTION);

int angulo=115;
int r=10;
int t=2;
int w;
int Wo=0;
double Wf;
double Vf;
int[]v=new int[2];
double []a=new double[2];
double a1;
double v1;

v[0]=-10; v[1]=-20;
a[0]=-2.3; a[1]=-1.8;

g.setColor(Color.BLUE);
g.drawString("DATOS:", 250, 30);
g.setColor(Color.BLACK);
g.drawString("r = 10m :", 250, 45);
g.drawString("t = 2s :", 250, 60);
g.drawString("V = (-10, -20)m/s", 250, 75);

g.setColor(Color.BLUE);
g.drawString("RESPUESTAS: ", 250, 110);
g.setColor(Color.BLACK);
g.drawString("α = 115º", 150, 120);
g.setColor(Color.GREEN);
g.fillArc(100, 50,100 ,100 ,0, (angulo));
g.setColor(Color.black);
g.fillOval(147, 96, 8, 8);
g.fillOval(126, 52, 8, 8);
g.drawLine(150, 100, 129, 53);


w=angulo/t;
g.drawString("W ="+w, 250, 125);
v1= Math.sqrt(Math.pow(v[0], 2) + Math.pow(v[1], 2));
a1 = Math.sqrt(Math.pow(a[0], 2) + Math.pow(a[1], 2));
Wf= Wo + a1 * t;
g.drawString("Wf ="+Wf, 250, 140);
Vf= r*w;
g.drawString("Vf ="+Vf, 250, 155);

}
}

martes, 16 de junio de 2009

dinámica 2




package dinámica;

import javax.swing.JApplet;
import java.awt.Color;
import java.awt.Graphics;
import javax.swing.JOptionPane;

/**
*
* @author program
*/
public class dinanica extends JApplet {

/**
* Initialization method that will be called after the applet is loaded
* into the browser.
*/
public void init() {
// TODO start asynchronous download of heavy resources
}

public void paint(Graphics g){
/* String aux = JOptionPane.showInputDialog(null,"INGRESE LA ALTURA h","Triángulo escaleno",JOptionPane.DEFAULT_OPTION);
int x = Integer.parseInt(aux);
String aux1 = JOptionPane.showInputDialog(null,"INGRESE el largo l","Triángulo escaleno",JOptionPane.DEFAULT_OPTION);
int y = Integer.parseInt(aux1);


g.drawLine(50, 180, 180, 180);
g.drawLine(180, 180, 180,90);
g.drawLine(50,180, 180, 90);
//g.drawLine(180-x, 100, 150-x, 100-x);*/
String aux=JOptionPane.showInputDialog(null,"INGRESE EL VALOR DE LA BASE","BASE",JOptionPane.PLAIN_MESSAGE);
double x= Double.parseDouble(aux);
g.drawLine(30,150,(int)x+30,150 );
String aux2=JOptionPane.showInputDialog(null,"INGRESE EL VALOR DE LA ALTURA","ALTURA",JOptionPane.DEFAULT_OPTION);
double y =Double.parseDouble(aux2);
g.drawLine((int)x+30, 150,(int)x+30,150-(int)y);
g.drawLine(30, 150, (int)x+30, 150-(int)y);

double angulo;
double tan=y/x;
angulo=Math.atan(tan);
angulo=Math.toDegrees(angulo);

String aux8=JOptionPane.showInputDialog(null,"INGRESE LA DISTANCIA a DE LA MASA","INGRESE DISTANCIA a",JOptionPane.DEFAULT_OPTION);
double ab=Double.parseDouble(aux8);
double c=ab*Math.cos(angulo*Math.PI/180);
double xo=30+c;
double l=ab*Math.sin(angulo*Math.PI/180);
double yo=150-l;
double d=20*Math.cos(angulo*Math.PI/180);
double xo1=xo+d;
double m=(c+d)*Math.tan(angulo*Math.PI/180);
double yo1=150-m;
g.setColor(Color.RED);
g.drawLine((int)xo,(int)yo,(int)xo1,(int)yo1);
double dx=10*Math.sin(angulo*Math.PI/180);
double dy=10*Math.cos(angulo*Math.PI/180);
double xo2=xo1-dx;
double yo2=yo1-dy;
g.drawLine((int)xo1,(int)yo1,(int)xo2,(int)yo2);
g.drawLine((int)xo2,(int)yo2,(int)(xo-dx),(int)(yo-dy));
g.drawLine((int)(xo-dx),(int)(yo-dy),(int)xo,(int)yo);



String aux3=JOptionPane.showInputDialog(null,"INGRESE EL VALOR DE LA FUERZA","FUERZA EN NEWTONS",JOptionPane.DEFAULT_OPTION);
double fuerza=Double.parseDouble(aux3);
String aux4=JOptionPane.showInputDialog(null,"INGRESE EL VALOR DE LA MASA","MASA EN KILOGRAMOS",JOptionPane.DEFAULT_OPTION);
double masa=Double.parseDouble(aux4);

String aux5=JOptionPane.showInputDialog(null,"INGRESE EL VALOR DEL COEFICIENTE DE ROZAMIENTO","COEFICIENTE DE ROZAMIENTO",JOptionPane.DEFAULT_OPTION);
double miu=Double.parseDouble(aux5);

String aux6=JOptionPane.showInputDialog(null,"INGRESE EL TIEMPO","TIEMPO EN SEGUNDOS",JOptionPane.DEFAULT_OPTION);
double tiempo=Double.parseDouble(aux6);

double gravedad=9.8;
double aceleracion;
aceleracion=(fuerza/masa)-(gravedad*((miu*Math.cos(angulo*Math.PI/180))+Math.sin(angulo*Math.PI/180)));
double desplazamiento= aceleracion*0.5*tiempo*tiempo;
double xn=desplazamiento*Math.cos(angulo*Math.PI/180);
double yn=desplazamiento*Math.sin(angulo*Math.PI/180);
g.setColor(Color.BLACK);
g.drawLine((int)(xo+xn),(int)(yo-yn), (int)(xo1+xn), (int)(yo1-yn));
g.drawLine((int)(xo1+xn),(int)(yo1-yn),(int)(xo2+xn),(int)(yo2-yn) );
g.drawLine((int)(xo2+xn),(int)(yo2-yn),(int)(xo+xn-dx),(int)(yo-yn-dy) );
g.drawLine((int)(xo+xn-dx),(int)(yo-yn-dy),(int)(xo+xn),(int)(yo-yn) );


g.setColor(Color.RED);
double yb=5*Math.sin((angulo)*Math.PI/180);
double xb=5*Math.cos((angulo)*Math.PI/180);
double frx=0.1*miu*masa*gravedad*Math.cos(angulo*Math.PI/180);
double fry=0.1*miu*masa*gravedad*Math.sin(angulo*Math.PI/180);
g.drawLine((int)(xo+xn-xb+(0.5*d)),(int)(yo-yn-yb-dx),(int)(xo+xn-xb+(0.5*d)-frx),(int)(yo-yn-yb-dx+fry) );
g.drawString("fr",(int)(xo+xn-xb+(0.5*d)-frx-15),(int)(yo-yn-yb-dx+fry));

g.setColor(Color.BLUE);
double ny=0.1*masa*gravedad*Math.cos(angulo*Math.PI/180);
double nx=0.1*masa*gravedad*Math.sin(angulo*Math.PI/180);
g.drawLine((int)(xo+xn-xb+(0.5*d)),(int)(yo-yn-yb-dx),(int)(xo+xn-xb+(0.5*d)-nx),(int)(yo-yn-yb-dx-ny) );
g.drawString("FN",(int)(xo+xn-xb+(0.5*d)-nx-20),(int)(yo-yn-yb-dx-ny));
g.setColor(Color.cyan);
double fx=0.1*fuerza*Math.cos(angulo*Math.PI/180);
double fy=0.1*fuerza*Math.sin(angulo*Math.PI/180);
g.drawLine((int)(xo+xn-xb+(0.5*d)),(int)(yo-yn-yb-dx),(int)(xo+xn-xb+(0.5*d)+fx),(int)(yo-yn-yb-dx-fy) );
g.drawString("F",(int)(xo+xn-xb+(0.5*d)+fx-15),(int)(yo-yn-yb-dx-fy));

g.setColor(Color.green);
double peso=0.1*masa*gravedad;
g.drawLine((int)(xo+xn-xb+(0.5*d)),(int)(yo-yn-yb-dx),(int)(xo+xn-xb+(0.5*d)),(int)(yo-yn-yb-dx+peso) );
g.drawString("P",(int)(xo+xn-xb+(0.5*d)-15),(int)(yo-yn-yb-dx+peso));


g.setColor(Color.RED);
g.drawString("FUERZA = ", 260,44);
g.drawString("MASA =", 270,59);
g.drawString("TIEMPO =", 260,74);
g.drawString("MIU =", 280,89);
g.drawString("ACEL =", 270,104);
g.drawString("DESPLA =", 260,119);
g.drawString("LA NORMAL =", 230,134);
g.drawString("ANG PLANO =", 230,149);
g.drawString("b =",30+(int)x/2,170);
g.drawString("h =",(int)x+40,160-(int)y/2);

g.setColor(Color.BLACK);
g.drawString(""+(int)x,50+(int)x/2,170);
g.drawString(""+(int)y,(int)x+60,160-(int)y/2);
g.drawString(""+(short)angulo, 322,149);
g.drawString(""+fuerza, 322,44);
g.drawString(""+(short)masa, 322,59);
g.drawString(""+tiempo, 322,74);
g.drawString(""+miu, 322,89);
g.drawString(""+miu, 322,89);
g.drawString(""+(short)aceleracion, 322,104);
g.drawString(""+(short)desplazamiento, 322,119);
g.drawString(""+(short)(miu*masa*gravedad*Math.cos(angulo*Math.PI/180)), 322,134);
}
}

miércoles, 10 de junio de 2009

dinámica





package dinámica;

import javax.swing.JApplet;
import java.awt.Color;
import java.awt.Graphics;
import javax.swing.JOptionPane;

/**
*
* @author program
*/
public class dinanica extends JApplet {

/**
* Initialization method that will be called after the applet is loaded
* into the browser.
*/
public void init() {
// TODO start asynchronous download of heavy resources
}

public void paint(Graphics g){
/* String aux = JOptionPane.showInputDialog(null,"INGRESE LA ALTURA h","Triángulo escaleno",JOptionPane.DEFAULT_OPTION);
int x = Integer.parseInt(aux);
String aux1 = JOptionPane.showInputDialog(null,"INGRESE el largo l","Triángulo escaleno",JOptionPane.DEFAULT_OPTION);
int y = Integer.parseInt(aux1);


g.drawLine(50, 180, 180, 180);
g.drawLine(180, 180, 180,90);
g.drawLine(50,180, 180, 90);
//g.drawLine(180-x, 100, 150-x, 100-x);*/
String aux=JOptionPane.showInputDialog(null,"INGRESE EL VALOR DE LA BASE","BASE",JOptionPane.PLAIN_MESSAGE);
double x= Double.parseDouble(aux);
g.drawLine(30,150,(int)x+30,150 );
String aux2=JOptionPane.showInputDialog(null,"INGRESE EL VALOR DE LA ALTURA","ALTURA",JOptionPane.DEFAULT_OPTION);
double y =Double.parseDouble(aux2);
g.drawLine((int)x+30, 150,(int)x+30,150-(int)y);
g.drawLine(30, 150, (int)x+30, 150-(int)y);

double angulo;
double tan=y/x;
angulo=Math.atan(tan);
angulo=Math.toDegrees(angulo);

String aux8=JOptionPane.showInputDialog(null,"INGRESE LA DISTANCIA a DE LA MASA","INGRESE DISTANCIA a",JOptionPane.DEFAULT_OPTION);
double ab=Double.parseDouble(aux8);
double c=ab*Math.cos(angulo*Math.PI/180);
double xo=30+c;
double l=ab*Math.sin(angulo*Math.PI/180);
double yo=150-l;
double d=20*Math.cos(angulo*Math.PI/180);
double xo1=xo+d;
double m=(c+d)*Math.tan(angulo*Math.PI/180);
double yo1=150-m;
g.setColor(Color.RED);
g.drawLine((int)xo,(int)yo,(int)xo1,(int)yo1);
double dx=10*Math.sin(angulo*Math.PI/180);
double dy=10*Math.cos(angulo*Math.PI/180);
double xo2=xo1-dx;
double yo2=yo1-dy;
g.drawLine((int)xo1,(int)yo1,(int)xo2,(int)yo2);
g.drawLine((int)xo2,(int)yo2,(int)(xo-dx),(int)(yo-dy));
g.drawLine((int)(xo-dx),(int)(yo-dy),(int)xo,(int)yo);

String aux3=JOptionPane.showInputDialog(null,"INGRESE EL VALOR DE LA FUERZA","FUERZA EN NEWTONS",JOptionPane.DEFAULT_OPTION);
double fuerza=Double.parseDouble(aux3);
String aux4=JOptionPane.showInputDialog(null,"INGRESE EL VALOR DE LA MASA","MASA EN KILOGRAMOS",JOptionPane.DEFAULT_OPTION);
double masa=Double.parseDouble(aux4);

String aux5=JOptionPane.showInputDialog(null,"INGRESE EL VALOR DEL COEFICIENTE DE ROZAMIENTO","COEFICIENTE DE ROZAMIENTO",JOptionPane.DEFAULT_OPTION);
double miu=Double.parseDouble(aux5);

String aux6=JOptionPane.showInputDialog(null,"INGRESE EL TIEMPO","TIEMPO EN SEGUNDOS",JOptionPane.DEFAULT_OPTION);
double tiempo=Double.parseDouble(aux6);

double gravedad=9.8;
double aceleracion;
aceleracion=(fuerza/masa)-(gravedad*((miu*Math.cos(angulo*Math.PI/180))+Math.sin(angulo*Math.PI/180)));
double desplazamiento= aceleracion*0.5*tiempo*tiempo;
double xn=desplazamiento*Math.cos(angulo*Math.PI/180);
double yn=desplazamiento*Math.sin(angulo*Math.PI/180);
g.setColor(Color.BLACK);
g.drawLine((int)(xo+xn),(int)(yo-yn), (int)(xo1+xn), (int)(yo1-yn));
g.drawLine((int)(xo1+xn),(int)(yo1-yn),(int)(xo2+xn),(int)(yo2-yn) );
g.drawLine((int)(xo2+xn),(int)(yo2-yn),(int)(xo+xn-dx),(int)(yo-yn-dy) );
g.drawLine((int)(xo+xn-dx),(int)(yo-yn-dy),(int)(xo+xn),(int)(yo-yn) );


g.setColor(Color.RED);
g.drawString("FUERZA = ", 260,44);
g.drawString("MASA =", 270,59);
g.drawString("TIEMPO =", 260,74);
g.drawString("MIU =", 280,89);
g.drawString("ACEL =", 270,104);
g.drawString("DESPLA =", 260,119);
g.drawString("LA NORMAL =", 230,134);
g.drawString("ANG PLANO =", 230,149);
g.drawString("b =",30+(int)x/2,170);
g.drawString("h =",(int)x+40,160-(int)y/2);

g.setColor(Color.BLACK);
g.drawString(""+(int)x,50+(int)x/2,170);
g.drawString(""+(int)y,(int)x+60,160-(int)y/2);
g.drawString(""+(short)angulo, 322,149);
g.drawString(""+fuerza, 322,44);
g.drawString(""+(short)masa, 322,59);
g.drawString(""+tiempo, 322,74);
g.drawString(""+miu, 322,89);
g.drawString(""+miu, 322,89);
g.drawString(""+(short)aceleracion, 322,104);
g.drawString(""+(short)desplazamiento, 322,119);
g.drawString(""+(short)(miu*masa*gravedad*Math.cos(angulo*Math.PI/180)), 322,134);
}
}

miércoles, 3 de junio de 2009

CircleTemp




package temperatura;

import javax.swing.JApplet;
import java.awt.Color;
import java.awt.Graphics;
import javax.swing.JOptionPane;

public class CircleTemp extends JApplet {

/**
* Initialization method that will be called after the applet is loaded
* into the browser.
*/
public void init() {
// TODO start asynchronous download of heavy resources
}

public void paint(Graphics g){

g.drawString("TEMPERATURA", 120, 30);
g.drawOval(100, 50, 100,100 );
String aux = JOptionPane.showInputDialog(null,"INGRESE EL VALOR DE LA TEMPERATURA","titulo",JOptionPane.DEFAULT_OPTION);
int temp = Integer.parseInt(aux);
g.drawString("+"+temp+" C", 230, 200-temp);
g.setColor(Color.BLUE);
if(temp >80){
g.setColor(Color.RED);

g.drawString("ALERTA", 230 , 90);
g.fillArc(100, 50,100 ,100 ,0, (temp*360)/100);
}
g.fillArc(100, 50,100 ,100 ,0,(temp*360)/100);

}
}

TEMPERATURA




package temperatura;
import java.awt.Color;
import javax.swing.JApplet;
import java.awt.Graphics;
import javax.swing.JOptionPane;


public class temperatura extends JApplet {

public void init(){
//this.setSize(800, 450);

}

public void paint(Graphics g){
//this.setSize(800, 450);
g.setColor(Color.RED);
g.drawString("TEMPERATURA", 190 , 30);
// g.drawString("ALERTA", 500 , 50);
g.setColor(Color.BLACK);
g.drawOval(20, 30, 50, 50);
g.drawRect(200 ,50 , 20, 100);
g.drawString("-10 ºC", 230, 150);
g.drawString("100 ºC", 230, 50);
String aux = JOptionPane.showInputDialog(null,"INGRESE EL VALOR DE LA TEMPERATURA","titulo",JOptionPane.DEFAULT_OPTION);
int temp = Integer.parseInt(aux);
g.drawString("+"+temp+" C", 230, 150-temp);
g.setColor(Color.BLUE);
if(temp >80){
g.setColor(Color.RED);
g.fillOval(20, 30, 50, 50);
g.fillRect(200, 50, 20, 100-temp);
g.drawString("ALERTA", 30 , 10);

}
g.fillOval(20, 30, 50, 50);
g.fillRect(200, 50, 20, 100-temp);

}
}

miércoles, 27 de mayo de 2009

panel




import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;

public class DemoPanel extends JFrame {

Container contenedor;
private JPanel panelInicio;
private JPanel panelFin;
private JPanel PanelMedio;
private JPanel PanelMedio1;
private JButton [][] botones;
private JLabel[][] texto;
private JTextField [][] Texto;

public DemoPanel(){

super("Mi panel de Prueba");
botones = new JButton[3][3];
contenedor = getContentPane();
panelInicio = new JPanel(new GridLayout(3,3,10,10));


String [] nombres = {"Enero","Febrero","Marzo","Abril","mayo","junio","Julio","Agosto","Septiembre"};
/* botones[0][0]= new JButton("enero");
botones[0][1]= new JButton("Febrero");
botones[1][0]= new JButton("Marzo");
botones[1][1]= new JButton("Abril");
*/
int k=0;
for(int i=0; i<3; i++){
for(int j=0;j<3; j++){
botones[i][j] = new JButton(nombres[k]);
k += 1;
panelInicio.add(botones[i][j]);
}
}
contenedor.add(panelInicio,BorderLayout.NORTH);
setSize(425,150);
setVisible(true);

texto = new JLabel[5][5];
panelFin = new JPanel(new GridLayout(5,5,10,10));
for(int i=0; i<5; i++){
for(int j=0; j<5; j++){
texto[i][j]= new JLabel("texto "+i+" "+j);
panelFin.add(texto[i][j]);

}
}
contenedor.add(panelFin,BorderLayout.SOUTH);

Texto = new JTextField [4][3];
PanelMedio = new JPanel(new GridLayout(5,5,10,10));
for(int i=0; i<4; i++){
for(int j=0; j<3; j++){
Texto[i][j]= new JTextField("texto "+i+" "+j);
PanelMedio.add(Texto[i][j]);

}
}
contenedor.add(PanelMedio,BorderLayout.WEST);

Texto = new JTextField[2][4];
PanelMedio1 = new JPanel(new GridLayout(5,5,10,10));
for(int i=0; i<2; i++){
for(int j=0; j<4; j++){
Texto[i][j]= new JTextField("texto "+i+" "+j);
PanelMedio1.add(Texto[i][j]);

}
}
contenedor.add(PanelMedio1,BorderLayout.EAST);
}

public static void main(String args[]){
DemoPanel aplicacion = new DemoPanel();
aplicacion.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}

lunes, 25 de mayo de 2009

Funciones sen, cos, (ax+b)


package graficas;

import java.applet.Applet;
import java.awt.*;
public class Senoaxb extends Applet {
public void paint(Graphics g){
double m=1;
int a=1,b=1;
this.setSize(800, 450);
g.setColor(Color.DARK_GRAY);
g.drawString("Y = f(x)",100,80);
g.drawString("-Y = f(x)",100,420);
g.drawString("0",90,252);
g.drawString("X = Rad",620,250);
g.drawString("π/2",180,265);
g.drawString("π",290,245);
g.drawString("3π/2",360,245);
g.drawString("2π",450,245);
g.setColor(Color.BLACK);
g.drawLine(100, 100, 100, 400);
g.drawLine(100, 250, 600, 250);
g.drawLine(590, 120, 590, 50);
g.drawLine(700, 120, 700, 50);

g.drawLine(590, 120, 700, 120);
g.drawLine(590, 50, 700, 50);

g.setColor(Color.red);
for(int i=0;i<360; i=i+2){
g.fillOval( 100 + i,(int)(245 - 100*m*(Math.cos((a*i+b)*3.141516/180))),5,5);
}
g.drawString("y = cos (ax + b)", 600, 90);
g.setColor(Color.blue);
for(int i=0;i<360; i=i+2){
g.fillOval( 100 + i,(int)(245 - 100*m*(Math.sin((a*i+b)*3.141516/180))),5,5);
}
g.drawString("y = Sen (ax + b)", 600, 70);
g.setColor(Color.MAGENTA);
for(int i=0;i<360; i=i+2){
g.fillOval( 100 + i,(int)(m*(a*i+b)),5,5);
}
g.drawString("y = (ax + b)", 600, 110);
g.setColor(Color.BLUE);
//g.drawLine(100, 60, 200, 60);
for(int i=0; i<24; i++){
g.drawLine((i*15)+100, 145,(i*15)+110,145);
}
for(int i=0; i<24; i++){
g.drawLine((i*15)+100, 350,(i*15)+110,350);
}
for(int i=0; i<13; i++){
g.drawLine(370,(i*16)+145,370,(i*16)+155);
}
for(int i=0; i<13; i++){
g.drawLine(195,(i*16)+145,195,(i*16)+155);
}
for(int i=0; i<13; i++){
g.drawLine(283,(i*16)+145,283,(i*16)+155);
}
for(int i=0; i<13; i++){
g.drawLine(460,(i*16)+145,460,(i*16)+155);
}
g.setColor(Color.GRAY);
g.drawString("1", 90, 148);
g.drawString("-1", 85, 353);

}
}

domingo, 24 de mayo de 2009

funcion seno


package funcionseno;

import java.applet.Applet;
import java.awt.*;
public class FuncionSeno extends Applet {
public void paint(Graphics g){
this.setSize(800, 450);
g.setColor(Color.red);
g.drawString("y = Sen (x)", 400, 60);
g.drawString("Y = f(x)",100,80);
g.drawString("-Y = f(x)",100,420);
g.drawString("0",90,252);
g.drawString("X = Rad",620,250);
g.drawString("π/2",180,265);
g.drawString("π",290,245);
g.drawString("3π/2",360,265);
g.drawString("2π",450,245);
g.setColor(Color.BLACK);
g.drawLine(100, 100, 100, 400);
g.drawLine(100, 250, 600, 250);
g.setColor(Color.GREEN);
for(int i=0;i<360; i=i+2){
g.fillOval( 100 + i,(int) (245 - 100*(Math.sin(i*3.141516/180))),7,7);
}
g.setColor(Color.BLUE);
//g.drawLine(100, 60, 200, 60);
for(int i=0; i<7; i++){
g.drawLine((i*15)+100, 145,(i*15)+110,145);
}
for(int i=0; i<19; i++){
g.drawLine((i*15)+100, 350,(i*15)+110,350);
}
for(int i=0; i<7; i++){
g.drawLine(370,(i*15)+250,370,(i*15)+260);
}
for(int i=0; i<7; i++){
g.drawLine(195,(i*16)+145,195,(i*16)+155);
}
g.setColor(Color.GRAY);
g.drawString("1", 90, 148);
g.drawString("-1", 85, 353);

}
}

miércoles, 20 de mayo de 2009

cilco de vida de un applet

es un programa que contiene una serie de convenciones que permite navegar en un navegador compatible con java.
Lo primero que aparece son los mensajes "initializing... starting...", como resultado de la carga del applet en el navegador. Una vez cargado, lo que sucede es:


Se crea una instancia de la clase que controla al applet
El applet se inicializa a si mismo
Comienza la ejecución del applet
Cuando se abandona la página, por ejemplo, para ir a la siguiente, el applet detiene la ejecución. Cuando se regresa a la página que contiene el applet, se reanuda la ejecución.

Si se utiliza la opción del navegador de Reload, es decir, volver a cargar la página, el applet es descargado y vuelto a cargar. El applet libera todos los recursos que hubiese acaparado, detiene su ejecución y ejecuta su finalizador para realizar un proceso de limpieza final de sus trazas. Después de esto, el applet se descarga de la memoria y vuelve a cargarse volviendo a comenzar su inicialización.

Finalmente, cuando se concluye la ejecución del navegador, o de la aplicación que está visualizando el applet, se detiene la ejecución del applet y se libera toda la memoria y recursos ocupados por el applet antes de salir del navegador.

martes, 19 de mayo de 2009

Un applet


/*
* NewJApplet.java
*
* Created on 18 de mayo de 2009, 11:14
*/



/**
*
* @author program
*/
public class NewJApplet extends javax.swing.JApplet {

/** Initializes the applet NewJApplet */
public void init() {
try {
java.awt.EventQueue.invokeAndWait(new Runnable() {
public void run() {
initComponents();
}
});
} catch (Exception ex) {
ex.printStackTrace();
}
}


private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton2ActionPerformed
// TODO add your handling code here:

Matriz m = new Matriz(1,3);
double aux = Double.parseDouble(jTextField1.getText());
m.matriz[0][0]=aux;
aux= Double.parseDouble(jTextField4.getText());
m.matriz[0][1]=aux;
aux= Double.parseDouble(jTextField11.getText());
m.matriz[0][2]=aux;

double t = Double.parseDouble(jTextField9.getText());

Matriz o = new Matriz(1,3);
aux = Double.parseDouble(jTextField3.getText());
o.matriz[0][0]=aux;
aux= Double.parseDouble(jTextField2.getText());
o.matriz[0][1]=aux;
aux= Double.parseDouble(jTextField12.getText());
o.matriz[0][2]=aux;

jTextArea1.setText((o.suma(m.multiplicaEscalar(t))).imprimir());
}//GEN-LAST:event_jButton2ActionPerformed

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed
// TODO add your handling code here:
Matriz m = new Matriz(1,3);
double aux = Double.parseDouble(jTextField1.getText());
m.matriz[0][0]=aux;
aux= Double.parseDouble(jTextField4.getText());
m.matriz[0][1]=aux;
aux= Double.parseDouble(jTextField11.getText());
m.matriz[0][2]=aux;
jTextArea1.setText("Velocidad constante");
jTextArea1.setText(m.imprimir());
}//GEN-LAST:event_jButton1ActionPerformed

private void jTextField11ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jTextField11ActionPerformed
// TODO add your handling code here:
}//GEN-LAST:event_jTextField11ActionPerformed

private void jTextField12ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jTextField12ActionPerformed
// TODO add your handling code here:
}//GEN-LAST:event_jTextField12ActionPerformed

private void jButton4ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton4ActionPerformed
// TODO add your handling code here:

Matriz m = new Matriz(1,3);
double aux = Double.parseDouble(jTextField5.getText());
m.matriz[0][0]=aux;
aux= Double.parseDouble(jTextField6.getText());
m.matriz[0][1]=aux;
aux= Double.parseDouble(jTextField13.getText());
m.matriz[0][2]=aux;

double t = Double.parseDouble(jTextField10.getText());

Matriz o = new Matriz(1,3);
aux = Double.parseDouble(jTextField7.getText());
o.matriz[0][0]=aux;
aux= Double.parseDouble(jTextField8.getText());
o.matriz[0][1]=aux;
aux= Double.parseDouble(jTextField14.getText());
o.matriz[0][2]=aux;

Matriz a = new Matriz(1,3);
aux = Double.parseDouble(jTextField15.getText());
a.matriz[0][0]=aux;
aux= Double.parseDouble(jTextField16.getText());
a.matriz[0][1]=aux;
aux= Double.parseDouble(jTextField17.getText());
a.matriz[0][2]=aux;


jTextArea1.setText((o.suma(m.multiplicaEscalar(t)).suma(a.multiplicaEscalar(t*t*0.5))).imprimir());
}//GEN-LAST:event_jButton4ActionPerformed

private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton3ActionPerformed
// TODO add your handling code here:

Matriz Vo = new Matriz(1,3);
double aux = Double.parseDouble(jTextField5.getText());
Vo.matriz[0][0]=aux;
aux= Double.parseDouble(jTextField6.getText());
Vo.matriz[0][1]=aux;
aux= Double.parseDouble(jTextField7.getText());
Vo.matriz[0][2]=aux;

double t = Double.parseDouble(jTextField10.getText());

Matriz a = new Matriz(1,3);
aux = Double.parseDouble(jTextField15.getText());
a.matriz[0][0]=aux;
aux= Double.parseDouble(jTextField16.getText());
a.matriz[0][1]=aux;
aux= Double.parseDouble(jTextField17.getText());
a.matriz[0][2]=aux;

jTextArea1.setText((Vo.suma(a.multiplicaEscalar(t))).imprimir());


}//GEN-LAST:event_jButton3ActionPerformed


// Variables declaration - do not modify//GEN-BEGIN:variables
private javax.swing.JButton jButton1;
private javax.swing.JButton jButton2;
private javax.swing.JButton jButton3;
private javax.swing.JButton jButton4;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel10;
private javax.swing.JLabel jLabel11;
private javax.swing.JLabel jLabel12;
private javax.swing.JLabel jLabel13;
private javax.swing.JLabel jLabel14;
private javax.swing.JLabel jLabel15;
private javax.swing.JLabel jLabel16;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel3;
private javax.swing.JLabel jLabel4;
private javax.swing.JLabel jLabel5;
private javax.swing.JLabel jLabel6;
private javax.swing.JLabel jLabel7;
private javax.swing.JLabel jLabel8;
private javax.swing.JLabel jLabel9;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JTextArea jTextArea1;
private javax.swing.JTextField jTextField1;
private javax.swing.JTextField jTextField10;
private javax.swing.JTextField jTextField11;
private javax.swing.JTextField jTextField12;
private javax.swing.JTextField jTextField13;
private javax.swing.JTextField jTextField14;
private javax.swing.JTextField jTextField15;
private javax.swing.JTextField jTextField16;
private javax.swing.JTextField jTextField17;
private javax.swing.JTextField jTextField2;
private javax.swing.JTextField jTextField3;
private javax.swing.JTextField jTextField4;
private javax.swing.JTextField jTextField5;
private javax.swing.JTextField jTextField6;
private javax.swing.JTextField jTextField7;
private javax.swing.JTextField jTextField8;
private javax.swing.JTextField jTextField9;
// End of variables declaration//GEN-END:variables

}

martes, 12 de mayo de 2009

Consulta Swing y Awt

SWING

Además del paquete java.awt, Java pone a disposición del programador el paquete javax.swing para crear unas interfaces gráficas.
Está claro que hay muchas más clases de las de swing. Además hay muchas que tienen el mismo nombre de algunas clases de awt, excepto una J inicial, como, por ejemplo, JFrame, JDialog, etc. Estas clases funcionan igual que las de awt, pero contienen muchos métodos más útiles.
Las componentes de Swing utilizan la infraestructura de AWT, incluyendo el modelo de eventos AWT, el cual rige cómo una componente reacciona a eventos tales como, eventos de teclado, mouse, etc... Es por esto, que la mayoría de los programas Swing necesitan importar dos paquetes AWT: java.awt.* y java.awt.event.
Presentamos algunas de estás cosas que están en swing más que en awt.
En swing están las Toolbar, es decir, unas pequeñas barras sobre las que hay unos botones. Se pueden mover dentro de las ventanas que las incluyen.
Los botones de swing, como casi todos los demás JComponent, pueden tener tanto una etiqueta como una imagen, imagen que puede cambiar según el estado del botón.
Además en swing se pueden utilizar los Tooltip, es decir, aquellas sugerenias que salen automáticamente en un componente cuando el ratón se detiene en él durante un rato.


AWT

El AWT (Abstract Windows Toolkit) es la parte de Java que se ocupa de construir interfaces gráficas de usuario. Aunque el AWT ha estado presente en Java desde la versión 1.0, la versión 1.1 representó un cambio notable, sobre todo en lo que respecta al modelo de eventos. La versión 1.2 ha incorporado un modelo distinto de componentes llamado Swing, que también está disponible en la versión 1.1 como package adicional.
Permite hacer interfaces gráficas mediante artefactos de interacción con el usuario, como botones, menús, texto, botones para selección, barras de deslizamiento, ventanas de diálogo, selectores de archivos, etc. Y por supuesto despliegue gráfico general.
Estos artefactos de interacción se denominan widgets. En la ventana los artefactos se organizan en una jerarquía de componentes gráficas.
La estructura básica del AWT se basa en Componentes y Contenedores. Estos últimos contienen Componentes posicionados a su respecto y son Componentes a su vez, de forma que los eventos pueden tratarse tanto en Contenedores como en Componentes, corriendo por cuenta del programador (todavía no hay herramientas de composición visual) el encaje de todas las piezas, así como la seguridad de tratamiento de los eventos adecuados.

domingo, 19 de abril de 2009

MRUV (vectorialmente)

package mruv;

/**
*
* @author VICTOR
*/

public class Particula {
private Matriz DesplazamientoRealizado;
private Matriz velocidadInicial;
private Matriz aceleracion;

public Particula(){}

public Particula(Matriz dR, Matriz vI, Matriz a){
DesplazamientoRealizado = dR;
velocidadInicial = vI;
aceleracion = a;
}

public Matriz getDesplazamientoRealizado(){
return DesplazamientoRealizado;
}

public void setDesplazamientoRealizado(Matriz dR){
DesplazamientoRealizado = dR;
}

public Matriz getAceleracion(){
return aceleracion;
}

public void setAceleracion(Matriz a){
aceleracion = a;
}

public Matriz getVelocidadInicial(){
return velocidadInicial;
}

public void setVelocidadInicial(Matriz vI){
velocidadInicial = vI;
}



}


package mruv;

/**
*
* @author VICTOR
*/
public class MRUV {
public Particula particula;

public MRUV(){}

public MRUV(Matriz x0, Matriz v0, Matriz a){
particula = new Particula();
particula.setDesplazamientoRealizado(x0);
particula.setVelocidadInicial(v0);
particula.setAceleracion(a);
}

public Matriz calcularDesplazamiento(double t){
Matriz posicion;
Matriz x0, v0, a;
x0 = this.particula.getDesplazamientoRealizado();
posicion = new Matriz(x0.numeroFilas,x0.numeroColumnas);
v0 = this.particula.getVelocidadInicial();
a = this.particula.getAceleracion();

posicion = x0.suma(v0.multiplicaEscalar(t));

return posicion;
}

public Matriz calculoVelocidad(double t){
Matriz velocidad = particula.getVelocidadInicial();
return velocidad;
}

public Matriz calculoAceleracion(double t){
Matriz aceleracion = new Matriz(1,this.particula.getDesplazamientoRealizado().numeroColumnas);;
for(int i = 0; i < aceleracion.numeroFilas; i++)
for(int j = 0; j < aceleracion.numeroColumnas; j++)
aceleracion.matriz[i][j] = 0;
return aceleracion;
}

public static void main(String args[]){
Matriz x0 = new Matriz(1,3);
x0.matriz[0][0]=5; x0.matriz[0][1]=0; x0.matriz[0][2]=-5;

Matriz v0 = new Matriz(1,3);
v0.matriz[0][0]=13.61; v0.matriz[0][1]=15.83; v0.matriz[0][2]=0;

Matriz a = new Matriz(1,3);
a.matriz[0][0]=0; a.matriz[0][1]=0; a.matriz[0][2]=0;
MRUV m = new MRUV(x0,v0,a);

Matriz x;
x = m.calcularDesplazamiento(2);
Matriz v;
v = m.calculoVelocidad(2);
Matriz ac;
ac = m.calculoAceleracion(2);

System.out.println("la posicion inicial\n"+x0.imprimir());
System.out.println("la posicion final\n"+x.imprimir());
System.out.println("la velocidad inicial\n"+v0.imprimir());


}

}

MRUV

public class Particula {
private double distanciaRecorrida;
private double velocidadInicial;
private double velocidadFinal;
private double velocidadMedia;
//private static final double aceleracion=0.5;
private double aceleracion;


public Particula(){}

public Particula(double dR, double vM, double a){
distanciaRecorrida = dR;
velocidadMedia = vM;
aceleracion = a;
}

public double getdistanciaRecorrida(){
return distanciaRecorrida;
}

public void setdistanciaRecorrida(double pI){
distanciaRecorrida = pI;
}

public double getAceleracion(){
return aceleracion;
}

public void setAceleracion(double a){
aceleracion = a;
}

public double getVelocidadMedia(){
return velocidadMedia;
}

public void setVelocidadMedia(double vM){
velocidadMedia = vM;
}

public double getVelocidadInicial(){
return velocidadInicial;
}

public void setVelocidadInicial(double vI){
velocidadInicial = vI;
}

public double getVelocidadFinal(){
return velocidadFinal;
}

public void setVelocidadFinal(double vF){
velocidadFinal = vF;
}
}



public class MovRecUNi {
public Particula particula;

public MovRecUNi(){}

public MovRecUNi(double x0, double v0, double a, double vI){
particula.setdistanciaRecorrida(x0);
particula.setVelocidadMedia(v0);
particula.setAceleracion(a);
particula.setVelocidadInicial(vI);

}


public double calculoAceleracion(double t){
double aceleracion = particula.getVelocidadFinal()/t;
return aceleracion;
}

public double calculoVelocidad(double t){
double velocidad = particula.getVelocidadFinal()/2;
return velocidad;
}
public double calcularDistancia(double t){
double Distancia;
Distancia = particula.getVelocidadInicial()*t +particula.getAceleracion()*t*t*0.5;
return Distancia;
}


}


public class Prueba {
public static void main(String args[]){
Particula p = new Particula(0.0,0.0,0);
System.out.println(p.getdistanciaRecorrida());
p.setVelocidadInicial(0);
p.setVelocidadFinal(20.87);

System.out.println("Velocidad Inicial = "+p.getVelocidadInicial());
System.out.println("Velocidad final = "+p.getVelocidadFinal());

System.out.println("\n");
MovRecUNi m = new MovRecUNi();
m.particula=p;

System.out.println("Cuando t=120 segundos\n");
System.out.println("Aceleracion = "+m.calculoAceleracion(120));
System.out.println("Velocidad = "+m.calculoVelocidad(120));
System.out.println("La Distancia = "+m.calcularDistancia(120));


}

}

martes, 14 de abril de 2009

MRU

public class Prueba {
public static void main(String args[]){
Particula p = new Particula(0.0,0.0,0);
System.out.println(p.getPosicionInicial());
p.setVelocidadInicial(5);
p.setPosicionInicial(3);
p.setAceleracion(4);
System.out.println("Velocidad inicial = "+p.getVelocidadInicial());
System.out.println("Posicion inicial = "+p.getPosicionInicial());
System.out.println("Aceleracion = "+p.getAceleracion());
System.out.println("\n");
MovRecUNi m = new MovRecUNi();
m.particula=p;

System.out.println("Cuando t=5\n");
System.out.println("La Posicion = "+m.calcularPosicion(5));
System.out.println("Velocidad = "+m.calculoVelocidad(5));
System.out.println("Aceleracion = "+m.calculoAceleracion(5));




public class Particula {
private double posicionInicial;
private double velocidadInicial;
//private static final double aceleracion=0.5;
private double aceleracion;

public Particula(){}

public Particula(double pI, double vI, double a){
posicionInicial = pI;
velocidadInicial = vI;
aceleracion = a;
}

public double getPosicionInicial(){
return posicionInicial;
}

public void setPosicionInicial(double pI){
posicionInicial = pI;
}

public double getAceleracion(){
return aceleracion;
}

public void setAceleracion(double a){
aceleracion = a;
}

public double getVelocidadInicial(){
return velocidadInicial;
}

public void setVelocidadInicial(double vI){
velocidadInicial = vI;
}

}




public class MovRecUNi {
public Particula particula;

public MovRecUNi(){}

public MovRecUNi(double x0, double v0, double a){
particula.setPosicionInicial(x0);
particula.setVelocidadInicial(v0);
particula.setAceleracion(a);
}

public double calcularPosicion(double t){
double posicion;
posicion = particula.getPosicionInicial()+particula.getVelocidadInicial()*t +particula.getAceleracion()*t*t*0.5;
return posicion;
}

public double calculoVelocidad(double t){
double velocidad = particula.getVelocidadInicial()+ particula.getAceleracion()*t;
return velocidad;
}

public double calculoAceleracion(double t){
double aceleracion = particula.getAceleracion();
return aceleracion;
}

}

lunes, 6 de abril de 2009

prueba

respuestas:

1.- x1= -1.0 ; x2= 2.0 ; x3= -3.0

2.- x1= 1.0 ; x2= 0.0 ; x3= 1.0 ; x4= 0.0 ; x5= 0.0 ;

3.- a + b = 4.0 + 2.0 + 4.0 ;

4.- a - b = 0.0 + 4.0 + 4.0 ;

5.- a'b = 4.0 -2.0 0.0
6.0 -3.0 0.0
8.0 -4.0 0.0

domingo, 5 de abril de 2009

Sistema de Ecuaciones

public class Matriz {
int numeroFilas;
int numeroColumnas;
double [][] matriz;

public Matriz(){}

public Matriz(int nF, int nC){
numeroFilas = nF;
numeroColumnas = nC;
matriz = new double[numeroFilas][numeroColumnas];

for(int i = 0; i < numeroFilas; i++)
for(int j = 0; j < numeroColumnas; j++)
matriz[i][j] = 0;
}

public String imprimir1(){
String aux ="";

for(int i = 0; i < numeroFilas; i++){
for(int j = 0; j < numeroColumnas; j++){
aux = aux + matriz[i][j] +" ";
}
aux = aux + "\n";
}

return aux;
}

public String imprimir2(){
String aux ="";
aux=aux+"x1="+ matriz[0][0];
aux=aux+"\n";
aux=aux+"x2="+matriz[1][0];
return aux;
}


public Matriz multiplicacion(Matriz B){
if(this.numeroFilas==B.numeroColumnas){
Matriz r =new Matriz(this.numeroFilas,this.numeroColumnas);
int j;
int k;
for(int i=0;i

for(j=0;j
for(k=0;k

r.matriz[i][j]+=this.matriz[i][k]*B.matriz[k][j];

return r;
}
else{
Matriz r=new Matriz(1,1);
System.out.println("No esta definida la multiplicacion de estas matrices");
return r;
}
}
}

public Matriz inversa(){
Matriz result=new Matriz(this.numeroFilas,this.numeroColumnas);
double tmp;//variable temporal
Matriz I=new Matriz(this.numeroFilas,this.numeroColumnas*2);
for(int i=0;i
for(int j=0;j
I.matriz[i][j]=0.0;

for(int i=0;i
for(int j=0;j
I.matriz[i][j]=this.matriz[i][j];
if (i==j)
I.matriz[i][j+this.numeroFilas]=1.0;
}
}
for(int i=0;i
tmp=I.matriz[i][i];
for(int j=0;j<(this.numeroColumnas*2);j++)
I.matriz[i][j]/=tmp;
for(int k=0;k
if(k!=i){
tmp=I.matriz[k][i];
for(int j=0;j<(this.numeroColumnas*2);j++)
I.matriz[k][j]-=tmp*I.matriz[i][j];
}
}
}
for(int i=0;i
for(int j=0;j
result.matriz[i][j]=I.matriz[i][j+this.numeroColumnas];
return result;
}

public static void main(String args[]){

Matriz a=new Matriz(2,2);
a.matriz[0][0]=1;a.matriz[0][1]=1;
a.matriz[1][0]=-1;a.matriz[1][1]=2;
System.out.println("la matriz a es:");
System.out.println(a.imprimir1());

Matriz b=new Matriz(2,2);
b.matriz[0][0]=1;
b.matriz[1][0]=0;
System.out.println("la matriz b es:");
System.out.println(b.imprimir1());


Matriz resultado;

resultado=a.inversa();
System.out.println("la matriz inversa de a es:");
System.out.println(resultado.imprimir1());

resultado=a.inversa().multiplicacion(b);
System.out.println("las soluciones del sistema:");
System.out.println(" X1+ X2=1");
System.out.println("-X1+2X2=0");
System.out.println("son:");
System.out.println(resultado.imprimir2());
}

}

miércoles, 1 de abril de 2009

matriz inversa

public class Matriz {
int numeroFilas;
int numeroColumnas;
double [][]matriz;
double [][]matriz1;


public Matriz(int nF, int nC){
numeroFilas = nF;
numeroColumnas = nC;
matriz = new double[numeroFilas][numeroColumnas];
for(int i = 0; i < numeroFilas; i++)
for(int j = 0; j < numeroColumnas; j++)
matriz[i][j] = 0;

}

public String imprimir(){
String aux ="";
for(int i = 0; i < numeroFilas; i++){
for(int j = 0; j < numeroColumnas; j++){
aux = aux + matriz[i][j] +" "; }
aux = aux + "\n"; }
return aux; }


public Matriz inversa(){

Matriz c=new Matriz(this.numeroColumnas,this.numeroFilas);
c.matriz[1][0]=(((this.matriz[1][0]/this.matriz[1][0])*(this.matriz[0][0]))-(this.matriz[0][0]));
c.matriz[1][1]=(((this.matriz[1][1]/this.matriz[1][0])*(this.matriz[0][1]))-(this.matriz[0][1]));
c.matriz[0][1]=(((this.matriz[0][1]/this.matriz[0][1])*(this.matriz[1][1]))-(this.matriz[1][1]));
c.matriz[0][0]=(((this.matriz[0][0]/this.matriz[0][1])*(this.matriz[1][1]))-(this.matriz[0][0]));
return c;
}
public Matriz inversa2(){
Matriz d=new Matriz(this.numeroColumnas,this.numeroFilas);
d.matriz[1][0]=(((this.matriz[1][0]/this.matriz[1][0])*(this.matriz[0][0]))-(this.matriz[0][0]));
d.matriz[1][1]=(((this.matriz[1][1]/this.matriz[1][0])*(this.matriz[0][1]))-(this.matriz[0][1]));
d.matriz[0][1]=(((this.matriz[0][1]/this.matriz[0][1])*(this.matriz[1][1]))-(this.matriz[1][1]));
d.matriz[0][0]=(((this.matriz[0][0]/this.matriz[0][1])*(this.matriz[1][1]))-(this.matriz[0][0]));
return d;
}
public Matriz multiplicacion(Matriz e){

if((this.numeroFilas == e.numeroFilas)&(this.numeroColumnas == e.numeroColumnas)){
Matriz c = new Matriz(this.numeroFilas,this.numeroColumnas);
int j;
for(int i=0; ifor(j=0; jc.matriz[i][j]= this.matriz[i][j]*e.matriz[i][j];
return e;
} else{
Matriz r = new Matriz (1,1);
System.out.println("No se pueden multiplicar las matrices");
return r;
}

}

public Object clone(){
Matriz obj=null;
try{
obj=(Matriz)super.clone();
}catch(CloneNotSupportedException ex){
System.out.println(" no se puede duplicar");
}
obj.a=(int[][])obj.c.clone();
for(int i=0; i obj.c[i]=(int[])obj.c[i].clone();
}
return obj;
}

public static void main(String args[]){


Matriz a = new Matriz(2, 2);
a.matriz[0][0]=1;a.matriz[0][1]=-1;
a.matriz[1][0]=2;a.matriz[1][1]=1;

System.out.println("la matriz a es:");
System.out.println(a.imprimir());

Matriz b = new Matriz(2, 2);
b.matriz[0][0]=1;
b.matriz[1][1]=1;

System.out.println("la matriz b es:");
System.out.println(a.imprimir());

Matriz e = new Matriz(1, 1);
e.matriz[0][0]=3;
e.matriz[0][1]=4;

System.out.println("la matriz e es:");
System.out.println(a.imprimir());

}

}

domingo, 29 de marzo de 2009

matriz inversa

public class Matriz {

int numeroFilas;
int numeroColumnas;
double [][] matriz;

public Matriz(){}

public Matriz(int nF, int nC){
numeroFilas = nF;
numeroColumnas = nC;
matriz = new double[numeroFilas][numeroColumnas];
for(int i = 0; i < numeroFilas; i++)
for(int j = 0; j < numeroColumnas; j++)
matriz[i][j] = 0; }

public String imprimir(){
String aux ="";
for(int i = 0; i < numeroFilas; i++){
for(int j = 0; j < numeroColumnas; j++){
aux = aux + matriz[i][j] +" "; }
aux = aux + "\n"; }
return aux; }

public Matriz inversa(){
Matriz r=new Matriz(this.numeroColumnas,this.numeroFilas);
r.matriz[0][0]=((this.matriz[1][1]*this.matriz[2][2])-(this.matriz[2][1]*this.matriz[1][2]));
r.matriz[0][1]=((this.matriz[1][0]*this.matriz[2][2])-(this.matriz[2][0]*this.matriz[1][2]));
r.matriz[0][2]=((this.matriz[1][0]*this.matriz[2][1])-(this.matriz[2][0]*this.matriz[1][1]));
r.matriz[1][0]=((this.matriz[0][1]*this.matriz[2][2])-(this.matriz[2][1]*this.matriz[0][2]));
r.matriz[1][1]=((this.matriz[1][0]*this.matriz[2][2])-(this.matriz[2][0]*this.matriz[1][2]));
r.matriz[1][2]=((this.matriz[0][0]*this.matriz[2][1])-(this.matriz[2][0]*this.matriz[0][1]));
r.matriz[2][0]=((this.matriz[0][1]*this.matriz[1][2])-(this.matriz[1][1]*this.matriz[0][2]));
r.matriz[2][1]=((this.matriz[0][0]*this.matriz[1][2])-(this.matriz[1][0]*this.matriz[0][2]));
r.matriz[2][2]=((this.matriz[0][0]*this.matriz[1][1])-(this.matriz[1][0]*this.matriz[0][1]));
return r; }

public static void main(String args[]){
Matriz m = new Matriz(3, 3);
m.matriz[0][0]=1;
m.matriz[1][1]=1;
m.matriz[2][2]=1;
System.out.println("la matriz m es:");
System.out.println(m.imprimir());
Matriz b=new Matriz(3,3);
b.matriz[0][0]=1;b.matriz[0][1]=2;b.matriz[0][2]=3;
b.matriz[1][1]=4;b.matriz[1][2]=5;
b.matriz[2][2]=6;
System.out.println("la matriz b es:");
System.out.println(b.imprimir());

Matriz resultado;

resultado=m.inversa();
System.out.println("la matriz inversa de m es:");
System.out.println(resultado.imprimir());
resultado=b.inversa();
System.out.println("la matriz inversa de b es:");
System.out.println(resultado.imprimir());
}
}

lunes, 23 de marzo de 2009

suma matrices

public class Main {

public static void main(String[]args){

int[]v=new int[5];
int[]w=new int[5];
int[]c=new int[5];
int respuesta;
int respuesta2;

v[0]=1;
v[1]=1;
v[2]=9;
v[3]=9;
v[4]=2;

w[0]=3;
w[1]=2;
w[2]=4;
w[3]=2;
w[4]=2;

System.out.print("LA SUMAR DE VARIOS NUMEROS");
System.out.println();

for(int i=4;i>2;i--)
{
//la suma de matrices v[]+w[]

c[i]= v[i] + w[i];
respuesta=c[i];
if(respuesta>=10)
c[i]=respuesta-10;
}


for(int i=2;i>0;i--)
{
c[i]=v[i]+w[i]+(v[i+1]%w[i+1]);
respuesta2=c[i];

if(respuesta2>=10)
c[i]=respuesta2-10;
}
c[0]=v[0]+w[0];
for(int i=0;i<5;i++)
System.out.print(c[i]);
}
}

domingo, 22 de marzo de 2009

programacion orientada a objetos

La programación orientada a objetos es una nueva forma de programar que trata de encontrar una solución a estos problemas. Introduce nuevos conceptos, que superan y amplían conceptos antiguos ya conocidos. Entre ellos destacan los siguientes:

•Clase: definiciones de las propiedades y comportamiento de un tipo de objeto concreto. La instanciación es la lectura de estas definiciones y la creación de un objeto a partir de ellas.

•Herencia: (por ejemplo, herencia de la clase D a la clase C) Es la facilidad mediante la cual la clase D hereda en ella cada uno de los atributos y operaciones de C, como si esos atributos y operaciones hubiesen sido definidos por la misma D. Por lo tanto, puede usar los mismos métodos y variables publicas declaradas en C. Los componentes registrados como "privados" (private) también se heredan, pero como no pertenecen a la clase, se mantienen escondidos al programador y sólo pueden ser accedidos a través de otros métodos públicos. Esto es así para mantener hegemónico el ideal de OOP.

•Objeto: entidad provista de un conjunto de propiedades o atributos (datos) y de comportamiento o funcionalidad (métodos). Se corresponde con los objetos reales del mundo que nos rodea, o a objetos internos del sistema (del programa). Es una instancia a una clase.

•Método: Algoritmo asociado a un objeto (o a una clase de objetos), cuya ejecución se desencadena tras la recepción de un "mensaje". Desde el punto de vista del comportamiento, es lo que el objeto puede hacer. Un método puede producir un cambio en las propiedades del objeto, o la generación de un "evento" con un nuevo mensaje para otro objeto del sistema.

•Evento: un suceso en el sistema (tal como una interacción del usuario con la máquina, o un mensaje enviado por un objeto). El sistema maneja el evento enviando el mensaje adecuado al objeto pertinente. También se puede definir como evento, a la reacción que puede desencadenar un objeto, es decir la acción que genera.

•Mensaje: una comunicación dirigida a un objeto, que le ordena que ejecute uno de sus métodos con ciertos parámetros asociados al evento que lo generó.

•Propiedad o atributo: contenedor de un tipo de datos asociados a un objeto (o a una clase de objetos), que hace los datos visibles desde fuera del objeto y esto se define como sus características predeterminadas, y cuyo valor puede ser alterado por la ejecución de algún método.

•Estado interno: es una variable que se declara privada, que puede ser únicamente accedida y alterada por un método del objeto, y que se utiliza para indicar distintas situaciones posibles para el objeto (o clase de objetos). No es visible al programador que maneja una instancia de la clase.

•Componentes de un objeto:atributos, identidad, relaciones y métodos.

•Representación de un objeto: un objeto se representa por medio de una tabla o entidad que esté compuesta por sus atributos y funciones correspondientes.

lunes, 16 de marzo de 2009

ARREGLOS

Un arreglo es una secuencia de datos del mismo tipo
● Los datos se llaman elementos del arreglo y se numeran 0, 1, 2, ...
● Estos números localizan al elemento dentro del arreglo y se denominan índices
● En Java, los índices del arreglo empiezan con 0 y terminan con el tamaño del arreglo -1
● Si el arreglo tiene n elementos, se denotan como a[0], a[1], ... a[n-1]

Declaración de un arreglo
● La sintaxis de declaración de arreglos en Java es
– tipo [] identificador
– tipo identificador []
● Ejemplos:
● char cad[], p;
● int [] v, w;
● double [] m, t[], x;
● En la declaración del arreglo no se permite indicar el número de elementos, así, int
numeros[12] es erroneo


Tamaño del arreglo
● Java considera cada arreglo como un objeto
● El número de elementos de un arreglo se conoce accediendo al campo length
● double [] v = new double [15]
● System.out.print(v.length); //escribe 15
● El campo length está protegido, no se puede modificar



Arreglos de caracteres y
cadenas de texto
● Una cadena de texto es un conjunto de caracteres, 'abcdefg'. Son soportadas por la
clase String: String cadena = 'abcdefg'
● Los arreglos tipo char son secuencias de carcateres, con características de arreglos de otros tipos
String mas = “programador Java”;
char datos[] =
{'D','i','r','e','c','t','o','r','i','o'};


Arreglos multidimensionales
● Los arreglos vistos son unidimensionales, se conocen también como listas (vectores)
● Los arreglos multidimensionales tiene más de una dimensión.
● Los de dos dimensiones, se llaman tablas o matrices
● Sintaxis:
[][]
[][]
● char pantalla[][];
● pantalla = new int[10][5];


Ejemplo
public class arregloPrueba
{
public static int[] remover(int _i, int[] _a)
{
int[] b = new int[_a.length-1];
System.arraycopy( _a, 0, b, 0, _i );
System.arraycopy( _a, _i+1, b, _i, b.length-_i );
return b;
}

public static void main(String[] args)
{
int[] a = {1, 2, 3, 4, 5};
// remover elemento 3
int[] b = remover(3, a);

for( int i=0; i {
System.out.println( b[i] );
}
}
}

domingo, 15 de marzo de 2009

ejercicios con vectores

public class deber {
public static void main(String args[]){

double[] v;
double[] w;
double[]c= new double[3];
double escalar;
double angulo;
double mod;
double mod1;
v = new double[3];
w = new double[3];
v[0]=2; v[1]=3; v[2]=4;
w[0]=1; w[1]=2; w[2]=3;


//SUMA

System.out.print("El resultado de la suma es: ");
for(int i = 0; i < 3; i++)
c[i] = v[i] + w[i];

for(int i = 0; i < 3; i ++)
System.out.print(c[i]+" ");
System.out.println("\n");


//RESTA

System.out.print("El resultado de la resta es: ");

for(int i=0; i<3; i++)
c[i] = v[i]-w[i];

for(int i=0; i<3; i++)
System.out.print(c[i]+" ");
System.out.println("\n");


//PRODUCTO ESCALAR
escalar=0;
for(int i= 0; i<3 ; i++){
escalar += v[i]*w[i];
}
System.out.println("El producto escalar es: " +escalar);


//UNITARIOS
System.out.print("\nVECTORES UNITARIOS");

System.out.print("\nEl unitario del vector v es: ");
for(int i=0; i<3; i++)
c[i] = v[i]/escalar;
for(int i=0; i<3; i++)
System.out.print(c[i]+" ");
System.out.print("\n");

System.out.print("El unitario del vector w es: ");
for(int i=0; i<3; i++)
c[i] = w[i]/escalar;
for(int i=0; i<3; i++)
System.out.print(c[i]+" ");
System.out.println("\n");



//ANGULO FORMADOS POR LOS 2 VECTORES

mod = Math.sqrt(Math.pow(v[0], 2) + Math.pow(v[1], 2) + Math.pow(v[2], 2));
mod1 = Math.sqrt(Math.pow(w[0], 2) + Math.pow(w[1], 2) + Math.pow(w[2], 2));
angulo = Math.acos(escalar/(mod*mod1));
System.out.println("El ángulo formado por los 2 vectores es: "+angulo);

}
}

martes, 10 de marzo de 2009

JDK

¿Qué es JDK?

Se trata de un conjunto de herramientas (programas y librerías) que permiten desarrollar (compilar, ejecutar, generar documentación, etc.) programas en lenguaje Java.

Existen versiones del JDK para prácticamente todos los Sistemas Operativos y existen también distintos programas comerciales.

Los JDK incorporan una herramienta de Debugger (detener la ejecución de un programa en la línea que se desee y poder conocer el valor de las variables en ese momento).

La versión JDK1.2 se ha empezado a denominar también Java 2.


JRE

¿Qué es JRE?

Significa JAVA RUNTIME ENVIRONMENT (entorno en tiempo de ejecución Java) y como su nombre lo indica es de ambiente y que corresponde con un conjunto de utilidades que permite la ejecución de programas java sobre todas las plataformas soportadas.
Esta situación se da cuando empresas de Software diseñan alguna interface gráfica o aplicación en Java para su producto. Cabe mencionar que muchos productos que utilizan Java para su interface gráfica o instalación ya incluyen un JRE para evitarle la molestia de instalarlo, uno de estos es Oracle; sin embargo, muchos productos requieren que usted posea este ambiente, y una de las principales razones para tener el JRE es el costo ya que las empresas deben pagar a Sun por distribuir este ambiente en su producto.

JAVA

¿Qué es Java?

Java es un lenguaje de programación con el que podemos realizar cualquier tipo de programa. Es un lenguaje muy extendido y cada vez cobra más importancia tanto en el ámbito de Internet y en la informática.

Es un lenguaje independiente de la plataforma, eso quiere decir que si hacemos un programa en Java podrá funcionar en cualquier ordenador del mercado. Es una ventaja significativa para los desarrolladores de software, pues antes tenían que hacer un programa para cada sistema operativo, por ejemplo Windows, Linux, Apple, etc. Esto lo consigue porque se ha creado una Máquina de Java para cada sistema que hace de puente entre el sistema operativo y el programa de Java y posibilita que este último se entienda perfectamente.

Java está desarrollándose incluso para distintos tipos de dispositivos además del ordenador como móviles, agendas y en general para cualquier cosa que se le ocurra a la industria.

lunes, 9 de marzo de 2009