Programación al Extremo

Buscar en este blog

miércoles, 31 de octubre de 2012

Instalar Java ME en Netbeans

Programación al Extremo : Java
En este tutorial aprenderemos a instalar Java ME en Netbeans y Crear aplicaciones 
Si no tenemos instalados Netbeas descargarlo e instalalo .
Descargar SDK Java ME y descargamos el Que dice Plugins para Netbeans

Lo primero que haremos al momento de abrir Netbeans es irnos Tools --> Plugins--> Downloaded
Buscamos el archivo descargado lo descomprimimos e instalamos todos los archivos con extension .nbm
Le damos instalar y cuando termine reiniciamos Netbeans para que tome los cambios.


Tools Netbeans














Plugins Netbeans










Java ME SDK Tools










Cuando haya reiniciado Netbeans esta listo para usar la plataforma de JavaME

martes, 30 de octubre de 2012

Dibujar parábola en JavaME

Programación al Extremo : Java
Hola en esta oportunidad realizaremos una parábola en JavaMe con la clase Midlet y Canvas que graficaremos en la pantalla del celular la cual ira mostrando los puntos que tiene la parábola.

package hello; import javax.microedition.lcdui.Display; import javax.microedition.midlet.*; public class Midlet extends MIDlet { MIDPCanvas canvas; public void startApp() { canvas= new MIDPCanvas(this); Display.getDisplay(this).setCurrent(canvas); } public void pauseApp() { } public void destroyApp(boolean unconditional) { } public void exitMIDlet(){ destroyApp(false); notifyDestroyed(); } }




















Esta clase es la encargada de dibujar la parábola en el celular


package hello; import javax.microedition.lcdui.*; import javax.microedition.midlet.MIDlet; public class MIDPCanvas extends Canvas implements CommandListener { Midlet mi; final int fx=400,fy=200; int x,y; public MIDPCanvas(Midlet m) { mi=m; try { setCommandListener(this); addCommand(new Command("Salir", Command.EXIT, 1)); } catch(Exception e) { } } /** * paint */ public void paint(Graphics g) { int t=100; for(int h=0;h<t;h++){ int auxx=t-h; int auxy=auxx*auxx; x=(fx-auxx*12); y=(fy+auxx*auxx); g.setColor(255, 0, 0); g.fillRect(x/5,y/5, 5,5); } for(int h=0;h<t;h++){ int auxx=h; int auxy=auxx*auxx; x=(fx+auxx*12); y=(fy+auxx*auxx); g.setColor(255, 0, 0); g.fillRect(x/5,y/5, 5,5); } } protected void keyPressed(int keyCode) { } protected void keyReleased(int keyCode) { } protected void keyRepeated(int keyCode) { } protected void pointerDragged(int x, int y) { } protected void pointerPressed(int x, int y) { } protected void pointerReleased(int x, int y) { } public void commandAction(Command command, Displayable displayable) { mi.exitMIDlet(); addCommand(new Command("Salir", Command.EXIT, 1)); } }

jueves, 25 de octubre de 2012

Convertir en Java Decimal a Binario y Binario a Decimal

Programación al Extremo : Java
En este ejemplo veremos como convertir un numero en Java decimal dado a binario y viceversa convertir un numero Binario a decimal simplemente usando instrucciones y validaciones.

public class ConvertirDecimalABinario { public static void main(String arg[]){ long numeroDEcimal=134000;//numero que se va a conertir a binario long aux=numeroDEcimal;// sele asigna el numero ecimal a la variable auxiliar /*Creamos una varible String para guardar el numero Binario*/ String numeroBinario=new String(); /*Ciclo que va preguntando hasta que aux sea mayor a cero*/ while(aux>0){ numeroBinario=aux%2+numeroBinario;/* Dividimos y tomamos el residuo y lo concatenamos * con la cadena NumeroBinario */ aux/=2;//Vamos disminuyendo la variable aux dividiendola entre 2 } System.out.println(numeroBinario);// Imprimimos el numero Binario /*Ahora vamos a pasar de binario a decimal Tomemos el mismo numero que nos dio como resultado de la conversion de Decimal a Binario.*/ //Hacemos el Castin para convertir la cadena a Entero long numeroBinarioConvertir=Long.parseLong(numeroBinario); long salidaDecimal=0; long contador=1; long auxDecimal; while(numeroBinarioConvertir>0){ /*Sacamos el residuo de la operacion el cual multiplacaremos por la variable auxDecimal */ auxDecimal= numeroBinarioConvertir%2; //Vamos sumando y guardando en la variable salidaDecimal la operacion salidaDecimal=salidaDecimal+auxDecimal*contador; //Dividimo estre diez numeroBinarioConvertir/=10; contador=contador*2; } System.out.println(salidaDecimal); } } /*Salida 100000101101110000 134000 */

viernes, 19 de octubre de 2012

Escribir en un Archivo de texto en java

Programación al Extremo : Java
Ejemplo de como escribir en un archivo de texto en java.
En este ejemplo utilizaremos la File para crear el archivo, la Clase FileReader para leer el archivo y la clase BufferedWriter para ir escribiendo el texto en el archivo.

import java.io.*; public class EscribirArchivoTextoJava { public static void main(String arg[]){ FileReader fr = null; File archivo; BufferedWriter bfw; try { String rutaGuardar="D:/texto.txt"; //seleccionamos la ruta del archivo que vamos a guardar el archivo archivo = new File (rutaGuardar); /*Validamos si el archivo existe si no existe lo creamos con el * metodo createNewFile */ if(!archivo.exists()) archivo.createNewFile(); // Abrimos el archivo fr = new FileReader (archivo); //Cadena que vamos a escribir en el archivo String linea="hola"; bfw=new BufferedWriter(new FileWriter(rutaGuardar)); //Escribimos en el archivo bfw.append(linea); bfw.flush(); bfw.newLine();// crea una nueva linea }catch(IOException e){ System.out.println(e.toString()); }catch(Exception e){ System.out.println(e.toString()); }finally{ try { //Cerramos el archivo fr.close(); } catch (IOException ex) { } } } }

martes, 16 de octubre de 2012

Funcion de php que deletree separando con guiones salvo espacios

Programación al Extremo : PHP
Esta funcion de PHP toma un texto y lo separa con guiones excepto los espacios en blancos


<?php
function escribe_separa($cadena){
$nuevaCadena="";
for ($i=0;$i<strlen($cadena);$i++){
if(substr($cadena,$i,1)!=" "){
if(strlen($cadena)==$i+1)
$nuevaCadena.=substr($cadena,$i,1);
else if(substr($cadena,$i+1,1)===" ")
$nuevaCadena.=substr($cadena,$i,1)." ";
else$nuevaCadena.=substr($cadena,$i,1)."-";}
}
return $nuevaCadena;
}
echo escribe_separa ("hola");
echo "<p>";
echo escribe_separa ("Texto mas largo y veo lo que hace");?>

Operaciones con Array - Areglos en Java

Programación al Extremo : Java
Hola el siguiente ejemplo tiene la finalidad de explicar el manejo de Areglos - Array en Java  
Como inicializarlos, recorrerlos, y actualizarlos, obtener su valor etc.


package ejemplo; public class OperacionesConArray { public static void main(String ar[]){ //Punto A double A[ ]; A = new double[3]; int x; for (int i=0; i<A.length; i++) A[i] = i*3; x= (int) (A[0] + A[1] + A[2]); System.out.println(x); //Punto B int B[ ]; B = new int[5]; B[4]=1;//posicion B[4]=1; B[B[4]]=2;//posicion B[1]=2 B[B[B[4]]]=0;//posicion B[2]=0; B[B[B[B[4]]]]=3;//posicion B[0]=3; B[B[B[B[B[4]]]]]=4;//posicion B[3]=4; //Punto c int C[ ]; C = new int[4]; int y; for (int i=C.length-1; i>=0; i--) C[i] = i/2; y=C[0]+C[1]+C[2]+C[3]; System.out.println(y); // int A1[ ]= new int[6]; boolean valores[ ]= new boolean[6]; OperacionesConArray e=new OperacionesConArray(); System.out.println("Incia 1"); e.inicia1(A1); System.out.println("Incia 2"); e.inicia2(A1); System.out.println("Incia 3"); e.inicia3(valores); int nuevoArray[]=new int[6]; nuevoArray[0]=0; nuevoArray[1]=2; nuevoArray[2]=0; nuevoArray[3]=4; nuevoArray[4]=5; nuevoArray[5]=2; System.out.println("Numero de Ceros en el Array: "+e.cuentaCeros(nuevoArray)); System.out.println("Suma Pares: "+e.sumaPares(nuevoArray)); System.out.println("Numero de repeticiones: "+e.cuentaRepeticiones(nuevoArray,2)); System.out.println("Funcion Sustituye"); e.sustituye(nuevoArray, 2, 7); for(int m=0;m<nuevoArray.length;m++) System.out.println(nuevoArray[m]); } /**que recibe un arreglo de enteros y le asigna a cada localidad los valores 0,3,6,..,3*n * donde n es la longitud del arreglo. */ public void inicia1 ( int Arr[ ] ) { int acumulador=0; for(int x=0;x<Arr.length;x++){ acumulador+=x; Arr[x]=acumulador; System.out.println(Arr[x]); } } /**que recibe un arreglo de enteros y le asigna a cada localidad los valores n-1, n-2,...,2,1,0 * donde n es la longitud del arreglo. */ public void inicia2 ( int Arr[ ] ) { int acumulador=0; for(int x=0;x<Arr.length;x++){ acumulador=Arr.length-x; Arr[x]=acumulador; System.out.println(Arr[x]); } } /**que recibe un arreglo de valores booleanos y * le asigna de manera intercalada los valores true y false.*/ public void inicia3 ( boolean Arr[ ] ) { int val=0; for(int x=0;x<Arr.length;x++){ if(val==0){ Arr[x]=false; val=1; }else{ Arr[x]=true; val=0; } System.out.println(Arr[x]); } } /**que recibe un arreglo de enteros y regresa el * número de ceros que se encuentran dentro del arreglo.*/ public int cuentaCeros ( int Arr[ ] ) { int contador=0; for(int x=0;x<Arr.length;x++){ if(Arr[x]==0){ contador++; } } return contador; } /**que recibe un arreglo de enteros y regresa el resultado de sumar sólo * los números pares que hay dentro del arreglo. */ public int sumaPares ( int Arr[ ] ) { int contador=0; for(int x=0;x<Arr.length;x++){ if(Arr[x]%2==0){ contador+=Arr[x]; } } return contador; } /**que recibe un arreglo de enteros y un valor entero x. * La función regresa el número de veces que se repite el valor de x en el arreglo. */ public int cuentaRepeticiones ( int Arr[ ],int x ) { int contador=0; for(int y=0;y<Arr.length;y++){ if(Arr[y]==x){ contador++; } } return contador; } /**que recibe un arreglo de enteros y dos valores enteros old y new. * El procedimiento debe reemplazar todos los valores old del arreglo por el valor de new*/ public void sustituye ( int Arr[ ], int old, int nuevo ) { for(int y=0;y<Arr.length;y++){ if(Arr[y]==old){ Arr[y]=nuevo; } } } }

domingo, 14 de octubre de 2012

Fases de diseño de una base de datos

Programación al Extremo : base datos
La fase de diseño de una base de datos la podemos dividir en tres partes que son: Diseño Conceptual , Diseño Lógico, Diseño Físico. Veamos la definición de cada una de ellas:
Fases de diseño de una base de datos

1.DISEÑO CONCEPTUAL (Independiente del DBMS) Determinar las visualizaciones del usuario final, los resultados, y los requerimientos de procesamiento de transacciones) Definir entidades, atributos, relaciones, dibujar ER.
Ejemplo:

diseño conceptual


2.SELECCIÓN DEL SOFTWARE PARA DBMS
(Mysql, Oracle ,Sql Server, etc).


3.DISEÑO LOGICO (Dependiente del DBMS) Transformar el modelo conceptual en definiciones de tablas, vistas, etc.
Ejemplo:
• Esquema relacional
persona  (identificacion, nombres, apellidos, edad )

cuenta  (persona_id*, numerocuenta)

• Representación gráfica.
diseño conceptual


4.DISEÑO FISICO (Dependiente del hardware) Definir estructuras de almacenamiento y rutas de acceso para un desempeño óptimo.

Ejemplo:


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

-- Table `empleados`.`persona`

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

CREATE  TABLE IF NOT EXISTS `empleados`.`persona` (

  `identificacion` VARCHAR(15) NOT NULL ,

  `nombres` VARCHAR(20) NOT NULL ,

  `apellidos` VARCHAR(30) NOT NULL ,

  `edad` INT(11) NOT NULL ,

  PRIMARY KEY (`identificacion`) )

ENGINE = InnoDB

DEFAULT CHARACTER SET = latin1;

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

-- Table `empleados`.`cuenta`

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

CREATE  TABLE IF NOT EXISTS `empleados`.`cuenta` (

  `persona_id` VARCHAR(15) NOT NULL ,

  `numerocuenta` VARCHAR(45) NOT NULL ,

  INDEX `fk_persona` (`persona_id` ASC) ,

  CONSTRAINT `fk_persona`

    FOREIGN KEY (`persona_id` )

    REFERENCES `empleados`.`persona` (`identificacion` )

    ON DELETE NO ACTION

    ON UPDATE NO ACTION)

ENGINE = InnoDB

DEFAULT CHARACTER SET = latin1;

sábado, 13 de octubre de 2012

Ordenar Vector- Arreglo en java unidimensional

Programación al Extremo : Java
El siguiente ejemplo es un método que ordena un vector o Arreglo- array unidimensional en java les dejo el código fuente


public class OrdenaAreglo { /*Metodo Burbuja*/ public static void main(String[] args) { int areglo []= new int[100]; int nuevoAreglo[]=null; for(int i =0;i<100;i++){ areglo[i]=(int) Math.round((Math.random()*100)); } //imprimimos el areglo System.out.print("Areglo desordenado: "); for(int i =0;i<areglo.length;i++){ System.out.print(areglo[i]+" "); } System.out.println(); nuevoAreglo=aregloOrdenado(areglo) ; System.out.print("Areglo Ordenado: "); for(int i =0;i<nuevoAreglo.length;i++){ System.out.print(nuevoAreglo[i]+" "); } } public static int []aregloOrdenado(int[] listaOrdenar){ int numx=0; int numy=0; for ( int x=0;x<listaOrdenar.length;x++){ for (int y=0;y<listaOrdenar.length;y++){ if(listaOrdenar[y]>=listaOrdenar[x]){ numx=listaOrdenar[x]; numy=listaOrdenar[y]; listaOrdenar[x]=numx; listaOrdenar[y]=numy; }else if(listaOrdenar[y]<=listaOrdenar[x]){ numx=listaOrdenar[y]; numy=listaOrdenar[x]; listaOrdenar[x]=numx; listaOrdenar[y]=numy; } }//fin del segundo for }//fin del primer for return listaOrdenar; } }

miércoles, 10 de octubre de 2012

Calcular la diferencia en horas entre dos fechas en Java

Programación al Extremo : Java
Tutorial calcular la diferencia en horas entre dos fechas en java.
En esta ocasión explicare como calcular la diferencia en horas entre una fecha escrita por el usuario

package ejemplo; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import java.util.Locale; public class FechaHoraJava { static long milisegundos_dia = 24 * 60 * 60 * 1000; public static void main(String[] args) { /**llamamos el metodo StringToDate para convertir la cadena en un objeto de la clase date este metodo recive la fecha en cualquier formato */ Date fechaInicial= FechaHoraJava.StringToDate("2014/10/09 19:59:44", "/", 0);//yyyy-MM-dd Date fechaFinal= FechaHoraJava.StringToDate("2014/10/09 22:35:46", "/", 0); /**Creamos una instancia de la clase calendar*/ Calendar calFechaInicial=Calendar.getInstance(); Calendar calFechaFinal=Calendar.getInstance(); /**Le pasamos el objeto Date al metodo set time*/ calFechaInicial.setTime(fechaInicial); calFechaFinal.setTime(fechaFinal); //Numero total de minutos que hay entre las dos Fechas System.out.println("Numero Total de Horas" + " Entre las dos Fechas: "+ cantidadTotalHoras(calFechaInicial,calFechaFinal)); //Numero total de horas que hay entre las dos Fechas System.out.println("Numero Total de Minutos" + " Entre las dos Fechas: "+ cantidadTotalMinutos(calFechaInicial,calFechaFinal)); //Numero total de segundos que hay entre las dos Fechas System.out.println("Numero Total de segundos" + " Entre las dos Fechas: "+ cantidadTotalSegundos(calFechaInicial,calFechaFinal)); /**Llamamos el metodo diferenciaHorasDias y diferenciaHoras y retamos para que nos de el total de horas */ long horas=diferenciaHorasDias(calFechaInicial, calFechaFinal)+diferenciaHoras(calFechaInicial,calFechaFinal); long minutos=diferenciaMinutos(calFechaInicial,calFechaFinal); /** si los minutos son iguales menores a cero hay que restarle 1 hora al total que dio las horas */ if(minutos<0) System.out.println("Horas: "+(horas-1)+" Minutos: " +(minutos+60)); else System.out.println("Horas: "+(horas)+" Minutos : "+minutos); } /*Metodo que calcula la diferencia de las horas que han pasado entre dos fechas en java */ public static long diferenciaHorasDias(Calendar fechaInicial ,Calendar fechaFinal){ //Milisegundos al día long diferenciaHoras=0; //Restamos a la fecha final la fecha inicial y lo dividimos entre el numero de milisegundos al dia diferenciaHoras=(fechaFinal.getTimeInMillis()-fechaInicial.getTimeInMillis())/milisegundos_dia; if(diferenciaHoras>0){ // Lo Multiplicaos por 24 por que estamos utilizando el formato militar diferenciaHoras*=24; } return diferenciaHoras; } /*Metodo que calcula la diferencia de los minutos entre dos fechas */ public static long diferenciaMinutos(Calendar fechaInicial ,Calendar fechaFinal){ long diferenciaHoras=0; diferenciaHoras=(fechaFinal.get(Calendar.MINUTE)-fechaInicial.get(Calendar.MINUTE)); return diferenciaHoras; } /*Metodo que devuelve el Numero total de minutos que hay entre las dos Fechas */ public static long cantidadTotalMinutos(Calendar fechaInicial ,Calendar fechaFinal){ long totalMinutos=0; totalMinutos=((fechaFinal.getTimeInMillis()-fechaInicial.getTimeInMillis())/1000/60); return totalMinutos; } /*Metodo que devuelve el Numero total de horas que hay entre las dos Fechas */ public static long cantidadTotalHoras(Calendar fechaInicial ,Calendar fechaFinal){ long totalMinutos=0; totalMinutos=((fechaFinal.getTimeInMillis()-fechaInicial.getTimeInMillis())/1000/60/60); return totalMinutos; } /*Metodo que devuelve el Numero total de Segundos que hay entre las dos Fechas */ public static long cantidadTotalSegundos(Calendar fechaInicial ,Calendar fechaFinal){ long totalMinutos=0; totalMinutos=((fechaFinal.getTimeInMillis()-fechaInicial.getTimeInMillis())/1000); return totalMinutos; } /*Metodo que calcula la diferencia de las horas entre dos fechas*/ public static long diferenciaHoras(Calendar fechaInicial ,Calendar fechaFinal){ long diferenciaHoras=0; diferenciaHoras=(fechaFinal.get(Calendar.HOUR_OF_DAY)-fechaInicial.get(Calendar.HOUR_OF_DAY)); return diferenciaHoras; } /* Convierte una fecha en date a string*/ public static String DateToString(Date fecha,String caracter,int op){ String formatoHora=" HH:mm:ss";//Formato de hora //caracter hace referencia al separador / - String formato="yyyy"+caracter+"MM"+caracter+"dd"+formatoHora; if(op==1) // formato="yyyy"+caracter+"dd"+caracter+"MM"+formatoHora; else if(op==2) formato="MM"+caracter+"yyyy"+caracter+"dd"+formatoHora; else if(op==3) formato="MM"+caracter+"dd"+caracter+"yyyy"+formatoHora; else if(op==4) formato="dd"+caracter+"yyyy"+caracter+"MM"+formatoHora; else if(op==5) formato="dd"+caracter+"MM"+caracter+"yyyy"+formatoHora; SimpleDateFormat sdf = new SimpleDateFormat(formato, Locale.getDefault()); String fechaFormato=null; sdf.setLenient(false); fechaFormato=sdf.format(fecha); return fechaFormato; } /*Convertir fecha date en string*/ public static Date StringToDate(String fecha,String caracter,int op){ String formatoHora=" HH:mm:ss"; String formato="yyyy"+caracter+"MM"+caracter+"dd"+formatoHora; if(op==1) // formato="yyyy"+caracter+"dd"+caracter+"MM"+formatoHora; else if(op==2) formato="MM"+caracter+"yyyy"+caracter+"dd"+formatoHora; else if(op==3) formato="MM"+caracter+"dd"+caracter+"yyyy"+formatoHora; else if(op==4) formato="dd"+caracter+"yyyy"+caracter+"MM"+formatoHora; else if(op==5) formato="dd"+caracter+"MM"+caracter+"yyyy"+formatoHora; SimpleDateFormat sdf = new SimpleDateFormat(formato, Locale.getDefault()); Date fechaFormato=null; try { sdf.setLenient(false); fechaFormato=sdf.parse(fecha); } catch (ParseException ex) { } return fechaFormato; } }