Descarga el PDF aquí:
https://mega.co.nz/#!7MImkLLR!WmEVOxTcexRMqTp7d0P1wiz8OwZoNLlMILdFQjFqeSs
Estructura Switch - Ejemplos
Ingresar un numero entre 1 y 12 y reportar el mes que le corresponde
import java.util.Scanner;
public class Ejemplo {
public static void main(String []args)
{
Scanner in=new Scanner(System.in);
System.out.print("Ingrese un numero 1-12:");
int numero=in.nextInt();
switch(numero)
{
case 1:System.out.println("ENERO");break;
case 2:System.out.println("FEBRERO");break;
case 3:System.out.println("MARZO");break;
case 4:System.out.println("ABRIL");break;
case 5:System.out.println("MAYO");break;
case 6:System.out.println("JUNIO");break;
case 7:System.out.println("JULIO");break;
case 8:System.out.println("AGOSTO");break;
case 9:System.out.println("SEPTIEMBRE");break;
case 10:System.out.println("OCTUBRE");break;
case 11:System.out.println("NOVIEMBRE");break;
case 12:System.out.println("DICIEMBRE");break;
default:System.out.println("Ingresa un numero del 1 al 12");
}
}
}
En este blog podrá aprender aspectos básicos de la programación Java y asi mismo adquirirá métodos para programar.
domingo, 3 de noviembre de 2013
Proyecto JAVA
Descarga el PDF del proyecto Java Parte I aquí:
PROYECTO: JAVA
“El
uso de Java”
UNIVERSIDAD PRIVADA DEL NORTE
CAPÍTULO 1. INTRODUCCIÓN.
1. Realidad problemática.
Java es la tecnología
subyacente que permite el uso de programas punteros, como herramientas, juegos
y aplicaciones de negocios. Java se ejecuta en más de 850 millones de
ordenadores personales de todo el mundo y en miles de millones de dispositivos,
como dispositivos móviles y aparatos de televisión, la cual fue desarrollada
por la compañía Sun Microsystems con el que podemos realizar cualquier tipo de
programa. En la actualidad es un lenguaje muy extendido y cada vez cobra más
importancia tanto en el ámbito de Internet como en la informática en general.
El lenguaje Java se creó con cinco objetivos principales:
Debería usar el paradigma de la programación orientada a objetos.
Debería permitir la ejecución de un mismo programa en múltiples sistemas
operativos.
Debería incluir por defecto soporte para trabajo en red.
Debería diseñarse para ejecutar código en sistemas remotos de forma
segura.
Debería ser fácil de usar y tomar lo mejor de otros lenguajes orientados
a objetos, como C++.
Actualmente, Java ha
sufrido muchas vulnerabilidades en todos sus años, pero esta no es como otra
cualquiera, es una vulnerabilidad muy peligrosa. Se ha descubierto un fallo
de seguridad 0-day en la última versión 1.7 de Java, calificada por los propios desarrolladores con el
grado crítico. El exploit instala un dropper (Dropper.MsPMs) que permite
ejecutar sofware malicioso sin ser detectado por los programas antivirus.
2. Formulación del problema.
Una investigación indicó que los incidentes de Java continúan y
que el 93% de las empresas eran vulnerables a explotaciones Java conocidas.
Casi el 50% del tráfico empresarial utilizó una versión de Java que estaba
desactualizada por más de dos años. Mediante un análisis de Websense Threat Seeker Intelligence Cloud, ahora se descubrió que:
- Sólo el
19% de equipos empresariales basados en Windows ejecutaron la más reciente
versión de Java (7u25) entre el 1 y el 29 de agosto de 2013.
- Más del
40% de las solicitudes empresariales Java provinieron de navegadores que
aún utilizan el obsoleto Java 6. Como resultado, más del 80% de las
solicitudes de Java son susceptibles a dos populares y nuevas vulnerabilidades
Java: CVE-2013-2473 y CVE-2013-2463.
- El
83,86% de los navegadores empresariales tiene habilitado Java.
“Los recientes ataques de alto perfil han
establecido, nuevamente, la tendencia cada vez más sólida de que Java debe ser
visto como un riesgo de seguridad.
Es así que La última actualización de Java (7 u10) anunciada este año parece contener una grave vulnerabilidad que afectaría a todos los sistemas operativos.
Es así que La última actualización de Java (7 u10) anunciada este año parece contener una grave vulnerabilidad que afectaría a todos los sistemas operativos.
Es así que se nos viene la gran interrogante ¿Será seguro usar Java?.
3. Justificación.
Java, por ser en la
actualidad una tecnología de suma importancia decidimos investigar del tema
para saber las posibles vulnerabilidades que conlleva al usar dicha tecnología
y así entrar más a fondo que conflicto provoca que java pueda ser vulnerable,
ya que como mencionamos anteriormente: Java se ejecuta en más de 850 millones
de ordenadores personales de todo el mundo y en miles de millones de
dispositivos. Es por ello que buscando fuentes, se encuentra noticias de las
fallas que ha traído Java para que no se desee utilizar viendo que el problema
radica en versiones del programa actual.
Finalmente deseamos
justificar nuestro proyecto con la finalidad de contribuir posibles soluciones
a la controversial al uso de la tecnología Java, dando a lugar que muchos
consideran a este el mejor lenguaje de programación y de aplicaciones, pero por
el otro lado se ha detectado la lamentable vulnerabilidad.
4. Limitaciones.
Considerar que actualmente carecemos de estudios previos en lo que es
Java y sus características hasta ahora.
Agregar que la mayor parte de información expuesta al público se
encuentra en otro idioma.
La dificultad principal que presenta este proyecto es que desconocemos
por el momento tales vulnerabilidades a nivel de código, ya que esto se
encuentra clasificado al público; sin embargo, trabajaremos a fondo para
encontrar toda la información necesario que requerimos para presentar y definir
que vulnerabilidad se cree tener en Java.
Es por ello, la importancia de una investigación de este problema que
al ser desarrollado por estudiantes de nivel superior, se espera que denote una
gran exploración e indagación para dar una posible solución a la comunidad que
usa este tipo de tecnología.
5. Objetivos
5.1. Objetivo General.
Esperamos explicar una solución a la vulnerabilidad que presenta la tecnología
Java, así mismo presentar como este funciona dando posibles ejemplos de su uso programático
(Lenguaje de programación).
5.2. Objetivos Específicos.
Definir que es el lenguaje y tecnología Java.
Detallar el actual problema que presenta Java.
Explicar el funcionamiento de Java.
Evaluar el problema que radica en esta tecnología.
Proponer una solución al conflicto.
sábado, 2 de noviembre de 2013
Estructura if/else/else if
Descarga el PDF aquí:
https://mega.co.nz/#!fMAxkJpT!Sn1inxo8IwZO5EImbJo9qQJ2sE9k9X_HZC29QzzAo3w
Estructura if/else/else if - Ejemplos
Ingresar N números enteros y reportar la cantidad de pares y la cantidad de impares.
import java.util.Scanner;
public class Ejemplo
{
public static void main(String[] args)
{
Scanner scan = new Scanner(System.in);
int n, x, cp = 0, ci = 0;
System.out.print("Ingrese la cantidad de numeros a revisar: ");
n = scan.nextInt();
for (int i = 1; i <= n; i++)
{
System.out.print(i + ") Ingrese un numero: ");
x = scan.nextInt();
if (x % 2 == 0)
cp++;
else
ci++;
}
System.out.println("La cantidad de pares son: " + cp);
System.out.println("La cantidad de impares son: " + ci);
}
}
Estructura Switch - Ejemplos
Ingresar un numero entre 1 y 12 y reportar el mes que le corresponde
import java.util.Scanner;
public class Ejemplo {
public static void main(String []args)
{
Scanner in=new Scanner(System.in);
System.out.print("Ingrese un numero 1-12:");
int numero=in.nextInt();
switch(numero)
{
case 1:System.out.println("ENERO");break;
case 2:System.out.println("FEBRERO");break;
case 3:System.out.println("MARZO");break;
case 4:System.out.println("ABRIL");break;
case 5:System.out.println("MAYO");break;
case 6:System.out.println("JUNIO");break;
case 7:System.out.println("JULIO");break;
case 8:System.out.println("AGOSTO");break;
case 9:System.out.println("SEPTIEMBRE");break;
case 10:System.out.println("OCTUBRE");break;
case 11:System.out.println("NOVIEMBRE");break;
case 12:System.out.println("DICIEMBRE");break;
default:System.out.println("Ingresa un numero del 1 al 12");
}
}
}
https://mega.co.nz/#!fMAxkJpT!Sn1inxo8IwZO5EImbJo9qQJ2sE9k9X_HZC29QzzAo3w
Estructura if/else/else if - Ejemplos
Ingresar N números enteros y reportar la cantidad de pares y la cantidad de impares.
import java.util.Scanner;
public class Ejemplo
{
public static void main(String[] args)
{
Scanner scan = new Scanner(System.in);
int n, x, cp = 0, ci = 0;
System.out.print("Ingrese la cantidad de numeros a revisar: ");
n = scan.nextInt();
for (int i = 1; i <= n; i++)
{
System.out.print(i + ") Ingrese un numero: ");
x = scan.nextInt();
if (x % 2 == 0)
cp++;
else
ci++;
}
System.out.println("La cantidad de pares son: " + cp);
System.out.println("La cantidad de impares son: " + ci);
}
}
Estructura Switch - Ejemplos
Ingresar un numero entre 1 y 12 y reportar el mes que le corresponde
import java.util.Scanner;
public class Ejemplo {
public static void main(String []args)
{
Scanner in=new Scanner(System.in);
System.out.print("Ingrese un numero 1-12:");
int numero=in.nextInt();
switch(numero)
{
case 1:System.out.println("ENERO");break;
case 2:System.out.println("FEBRERO");break;
case 3:System.out.println("MARZO");break;
case 4:System.out.println("ABRIL");break;
case 5:System.out.println("MAYO");break;
case 6:System.out.println("JUNIO");break;
case 7:System.out.println("JULIO");break;
case 8:System.out.println("AGOSTO");break;
case 9:System.out.println("SEPTIEMBRE");break;
case 10:System.out.println("OCTUBRE");break;
case 11:System.out.println("NOVIEMBRE");break;
case 12:System.out.println("DICIEMBRE");break;
default:System.out.println("Ingresa un numero del 1 al 12");
}
}
}
lunes, 28 de octubre de 2013
CONTROL DO WHILE EN JAVA
dESCARGA EL PDF AQUÍ:
https://mega.co.nz/#!OMYFAR7C!D2gR6hfB-EuFkyC2jw4VzQ-24ZkDQ89Hx1saTZjhGIQ
CONTROL DO WHILE EN JAVA
La estructura do while es otra estructura repetitiva, la cual ejecuta al menos una vez su bloque repetitivo, a diferencia del while o del for que podían no ejecutar el bloque.Esta estructura repetitiva se utiliza cuando conocemos de antemano que por lo menos una vez se ejecutará el bloque repetitivo.
La condición de la estructura está abajo del bloque a repetir, a diferencia del while o del for que está en la parte superior.
Representación gráfica:

El bloque de operaciones se repite MIENTRAS que la condición sea Verdadera.
Si la condición retorna Falso el ciclo se detiene. En Java, todos los ciclos repiten por verdadero y cortan por falso.
Es importante analizar y ver que las operaciones se ejecutan como mínimo una vez.
No hay que confundir los rombos de las estructuras condicionales con los de las estructuras repetitivas do while.
En este problema por lo menos se carga un valor. Si se carga un valor mayor o igual a 100 se trata de un número de tres cifras, si es mayor o igual a 10 se trata de un valor de dos dígitos, en caso contrario se trata de un valor de un dígito. Este bloque se repite hasta que se ingresa en la variable valor el número 0 con lo que la condición de la estructura do while retorna falso y sale del bloque repetitivo finalizando el programa.
Programa:
import java.util.Scanner;
public class EstructuraRepetitivaDoWhile1 {
public static void main(String[] ar) {
Scanner teclado=new Scanner(System.in);
int valor;
do {
System.out.print("Ingrese un valor entre 0 y 999 (0 finaliza):");
valor=teclado.nextInt();
if (valor>=100) {
System.out.println("Tiene 3 dígitos.");
} else {
if (valor>=10) {
System.out.println("Tiene 2 dígitos.");
} else {
System.out.println("Tiene 1 dígito.");
}
}
} while (valor!=0);
}
}
WHILE EN JAVA
Descarga el PDF aquí:
https://mega.co.nz/#!rVw2AKAI!Va4v3HqhUEXgp_bRY7VJ7xp_TvhNtToD0zK6JEH1y1Q
CONTROL WHILE EN JAVA
La sentencia while es la más sencilla de las estructuras de iteración. La iteración continuará hasta que su condición sea falsa.
while ( condición ) sentencia ;
La condición tiene que tomar un valor booleano (verdadero o falso). Si este valor es verdadero, se ejecutará la sentencia. Concluida esta acción se vuelve a evaluar la condición. Proseguirán los ciclos hasta que la condición no cambie a falso.
Esta es una estructura de iteración preprueba, es decir primero se evalúa la condición antes de realizar cualquier acción. Si de entrada la condición es falsa nunca ejecutará el conjunto de sentencias.
Public static Void Main String [] args.
int n = 0;
while ( n > 0 ) System.out.println("Esto nunca lo verás");
Dentro del conjunto de sentencia que controla, debe existir alguna que cambie el valor de la condición que se está evaluando.
boolean prueba = true;
while ( prueba ) {
System.out.println("Esto lo verás una vez");
prueba = false;
}
Entraríamos en un ciclo infinito si nunca se modifica la condición y permanece verdadera.
boolean prueba = true;
while ( prueba ) {
System.out.println("Esto lo verás muchas veces");
}
Generalmente esta estructura se utiliza en situaciones en donde desconocemos la cantidad de ciclos que se deben ejecutar para producir un resultado. Mostraremos como se utiliza en estas circunstancias con el ejemplo de pase a binario, mostrado en el capítulo anterior.
Teníamos que transformar un número decimal a binario. El programa en java nos queda de esta manera:
public class Dec2Bin{
public static void main(String args[]){
int decimal = 252222;
String binario = "";
while ( decimal > 0 ) {
binario = decimal % 2 + binario;
decimal /= 2;
}
System.out.println(binario);
}
}
Como no sabemos de antemano cuantas vueltas debe dar, simplemente esperamos que el resultado de las divisiones sucesivas sea igual a cero.
También se pueden realizar ciclos con while en donde ya conocemos, antes de entrar en la estructura, cuantas vueltas debe dar para terminar. Para esto nos auxiliamos con un contador de vueltas. Previamente tiene que inicializarse antes de ingresar al ciclo. Luego en cada vuelta se modificara según la lógica del algoritmo.
Realicemos el programa que despliegue por pantalla cinco líneas de caracteres.
public class Cuadrado{
public static void main(String args[]){
int contador = 1;
while ( contador <= 5 ) {
System.out.println("*****\n");
contador++;
}
}
}
En este algoritmo, inicializamos el contador a 1 y luego en cada ciclo se incrementa. La condición de corte tiene como objetivo no permitir mas vueltas si el contador superó el valor 5.
For en Java
Descarga el PDF aquí:
https://mega.co.nz/#!yAomTCRK!WHoVAGk1ZExr1M8QQnA4sESExhRLa_tIANtZQ35z8yo
Estructura de control for en Java
La estructura de control for permite ejecutar un bloque de instrucciones un número determinado de veces mientras se cumpla una condición. Es una de las estructuras de control repetitivas más utilizadas a pesar de que cualquier bucle for puede reescribirse fácilmente como un bucle while y viceversa.
La sintaxis básica de la estructura de control for es la siguiente:
for(inicialización;condicion;incremento) { //instrucciones }
La ejecución de la estructura de control for comienza con la instrucción de inicialización. Esta instrucción suele realizar la inicialisación de una variable de control que se la conoce como centinela. A continuación se comprueba la condición cuyo resultado tiene que ser un valor verdadero o uno falso (true o false).
Si la condición se evalúa como true se ejecuta el bloque de instrucciones delimitadas por las llaves que solo son necesarias si hay más de una instrucción. Después se ejecuta la instrucción de incremento y vuelve a comprobarse la condición. Así sucesivamente hasta que la condición no se cumple.
La inicialización, la condición y el incremento son instrucciones opcionales. Aún así sino se utilizan debe de estar presente el delimitador punto y coma (;). Por ejemplo si omitimos la condición y el incremento, la estructura de control for quedaría así:
for(int i=0;;) { //instrucciones }
Además si declaramos una variable en la instrucción de inicialización como en el ejemplo anterior, ésta solo será accesible desde el interior de la estructura de control for. Remarco esto porque todavía no hemos visto el ámbito de las variables y puede llevar a confusiones, así que de momento saber que solo puede utilizarse dentro del bucle for.
Vamos a ver el ejemplo que vimos en la entrada dedicada a la estructura de control while, pero en este caso utilizando la estructura de control for:
public class Ejemplo For { public static void main(String[] args) { for(int i=1; i<11; i++){ System.out.println("Número: " + i); } }}
En el siguiente ejemplo se va a mostrar como utilizar el ciclo for, además se hace uso de una variable que funciona como un acumulador, el cual se encarga de ir almacenando dos los valores despues de que realiza alguna petición. package ejer_ciclos;
import java.util.Scanner;
/**
*Desarrollado por Mtro. Andrés Donaciano Martínez Guillén
* 22 de septiembre de 2012
*/
public class Ejer_ciclos{public static void main(String[] args) {
Scanner lector=new Scanner(System.in);
float calif;
float suma=0;
float promedio;
int c;
for(c=1;c<=5;c++)//en esta instrucción se está creando un ciclo, y se utiliza la variable c para
//que sea el contador. Los contadores deberán ser variables de tipo entero.
//El ciclo irá desde 1 hasta 5.
//La expresión c++ indica que el contador se incrementará de uno en uno
{ System.out.println(“Teclea la calificación ” + c +”:”);
//Mensaje que pide la calificación que deberá teclearse
calif=lector.nextFloat();
//Lectura del dato tipo flotante desde el teclado
suma=suma+calif;
//Se utiliza la variable suma para acumulando el valor de las distintas calificaciones
//La variable suma se conoce como aculumador.
}
promedio=suma/(c-1);
//Al haber concluido las repeticiones se procede a calcular el promedio de las
//calificaciones
System.out.println(“El promedio de la calificación es:” + promedio);
//Manda un mensaje que muestra el promedio de las calificaciones
}
}
domingo, 27 de octubre de 2013
Secuencial - Hola Mundo
Descarga el PDF aquí:
https://mega.co.nz/#!PBZF2TBI!fQZ9whS6n5BSjxgeZ9qPUEM48NglM42wT9QBsgKSVFE
Esto es lo más común para todos:
https://mega.co.nz/#!PBZF2TBI!fQZ9whS6n5BSjxgeZ9qPUEM48NglM42wT9QBsgKSVFE
Esto es lo más común para todos:
El Hola mundo, a continuación les dejo el código.
Una mínima aplicación en Java
La aplicación más pequeña posible es la que simplemente imprime un mensaje en la pantalla. Tradicionalmente, el mensaje suele ser "¡Hola Mundo!". Esto es justamente lo que hace el siguiente fragmento de código:
//
// Aplicación HolaMundo de ejemplo
//
class HolaMundoApp {
public static void main( String args[] ) {
System.out.println( "¡Hola Mundo!" );
}
}
Hay que ver en detalle la aplicación anterior, línea a línea. Esas líneas de código contienen los componentes mínimos para imprimir ¡Hola Mundo! en la pantalla. Es un ejemplo muy simple, que no instancia objetos de ninguna otra clase; sin embargo, accede a una de las clases incluida en la plataforma Java.
// // Aplicación HolaMundo de ejemplo //
Estas tres primeras líneas son comentarios. Hay tres tipos de comentarios en Java,
// es un comentario orientado a línea.class HolaMundoApp {
Esta línea declara la clase HolaMundoApp. El nombre de la clase especificado en el fichero fuente se utiliza para crear un fichero nombredeclase.class en el directorio en el que se compila la aplicación. En este caso, el compilador creará un fichero llamado HolaMundoApp.class.
public static void main( String args[] ) {
Esta línea especifica un método que el intérprete Java busca para ejecutar en primer lugar. Igual que en otros lenguajes, Java utiliza una palabra clave main para especificar la primera función a ejecutar. En este ejemplo tan simple no se pasan argumentos.
public significa que el método main() puede ser llamado por cualquiera, incluyendo el intérprete Java.
static es una palabra clave que le dice al compilador que main se refiere a la propia claseHolaMundoApp y no a ninguna instancia de la clase. De esta forma, si alguien intenta hacer otra instancia de la clase, el método main() no se instanciaría.
void indica que main() no devuelve nada. Esto es importante ya que Java realiza una estricta comprobación de tipos, incluyendo los tipos que se ha declarado que devuelven los métodos.
args[] es la declaración de un array de Strings. Estos son los argumentos escritos tras el nombre de la clase en la línea de comandos:
% java HolaMundoApp arg1 arg2 ... System.out.println( "¡Hola Mundo!" );
A una variable de tipo class se puede acceder sin necesidad de instanciar ningún objeto de esa clase. Por ello ha de ser un tipo básico o primitivo, o bien puede ser una referencia que apunta a otro objeto. La variable out es una referencia que apunta a un objeto de otro tipo, en este caso una instancia de la clasePrintStream (un objeto PrintStream), que es automáticamente instanciado cuando la clase System es cargada en la aplicación.
El método println() toma una cadena como argumento y la escribe en el canal de salida estándar; en este caso, la ventana desde donde se lanza la aplicación. La clase PrintStream tiene un método instanciable llamado println(), que permite presentar en la salida estándar del Sistema el argumento que se le pase. En este caso, se utiliza la variable o instancia de out para acceder al método.
} }
Finalmente, se cierran las llaves que limitan el método main() y la clase HolaMundoApp.
Suscribirse a:
Entradas (Atom)