The::Beastieux

Sangre de Bestia + Corazón de Pingüino | Un blog acerca de Linux, *BSD, Open Source, Software Libre, Programación …

Archivos mensuales: junio 2008

Mapa del kernel “Linux”


 

Una interesante aportación al mundo Linux, este mapa muestra la arquitectura del kernel, el cual es utilizado por la gran cantidad de distribuciones linux existentes, Altamente recomendado, definido desde su website como: ‘The best gift for a Linux geek’.

Fuente: makelinux

Códigos Sencillos hechos en Java


Los códigos de cuando recién comenzaba mis pininos en java. Cópialo, pégalo, regálalo,modifícalo, haz algo útil con ellos.

Código Java – Determinar Orden de Variables
Código Java – Contar Elementos Repetidos
Código Java – Elimina Elementos Repetidos
Código Java – Números Primos
Código Java – Ordenar Array (Par, Impar)
Código Java – Temperatura (Fahrenheit / Celsius)
Código Java – Factorial
Código Java – Ejemplo de Matriz
Código Java – Temperatura Mensual
Código Java – Evaluación(Asistencia, Nota, Promedio)
Código Java – Simplificar Fracción
Código Java – Dados
Código Java – Pares e Impares
Código Java – Esfera
Código Java – Detectar Signo Numérico
Código Java – Sucesiones
Código Java – Cantidad de Impares
Código Java – Cambiar de Base
Código Java – Array de Factoriales
Código Java – Calcular Tiempo
Código Java – Cantidad de Fracciones
Código Java – Hipotenusa
Código Java – Multiplicación y División
Código Java – Completar Serie
Código Java – MCD y mcm
Código Java – Pirámide Numérica
Código Java – Medidas
Código Java – Elimina Caracteres Nulos
Código Java – Cilindro
Código Java – Horario
Código Java – Unir Vectores
Código Java – Calcular números pares
Código Java – Invertir Array
Código Java – Números Capicúas
Código Java – Múltiplos
Código Java – Resolver Operaciones
Código Java – Velocidad Final
Código Java – Velocidad de un Proyectil
Código Java – Promedio, Mediana, Moda, Máximo y Mínimo
Código Java – Llenar Array
Código Java – Generar Códigos
Código Java – Sumar Array
Código Java – Días de la Semana
Código Java – Calcular Potencia
Código Java – Invertir Números

Código Java – Determinar Orden de Variables


//Codificado por sAfOrAs
public class DSCOrdenDeVariables
{
	void DetectaOrden(int a,int b,int c)
	{
		if (a<b && b<c)
			System.out.println("Las variables estan en orden CRECIENTE");
		else if (a>b && b>c)
			System.out.println("Las variables estan en orden DECRECIENTE");
		else
			System.out.println("Las variables estan en DESORDEN");
	}

	public static void main(String[] args)
	{
		int a=0,b=0,c=0;

		DSCOrdenDeVariables variable = new DSCOrdenDeVariables();
		if(args.length<3)
			System.out.println("Debe ingresar 3 variables");
		else
		{	
			a=Integer.parseInt(args[0]);
			b=Integer.parseInt(args[1]);
			c=Integer.parseInt(args[2]);		
			variable.DetectaOrden(a,b,c);
		}	
		
	}
}

Código Java – Contar Elementos Repetidos


//Codificado por sAfOrAs
public class SyGContarElementosRepetidos{
	static int A=10;
	static int B=20;
	static int vectorA[]=new int[A];
	static int vectorB[]=new int[B];
	static int elemA=0;	
	static int elemB=0;
	static int z=0;
	static void llenaArreglo(){
		for(int i=0;i<vectorA.length;i++){
			vectorA[i]=(int)(Math.random()*100+1);
		}

		for(int i=0;i<vectorB.length;i++){
			vectorB[i]=(int)(Math.random()*100+1);
		}

	}

	static void compara(){
		for(int i=0;i<vectorA.length;i++){
			for(int j=0;j<vectorB.length;j++){
				if(vectorA[i]==vectorB[j])
					elemA++;
			}
			System.out.println("El elemento "+vectorA[i]+" se presenta "+elemA+" veces en B");
			elemA=0;
		}
	}

	static void imprimir(){
		for(int i=0;i<vectorA.length;i++){
			System.out.print("A"+"["+i+"]= "+vectorA[i]+"\n");
		}
		for(int i=0;i<vectorB.length;i++){
			System.out.print("B"+"["+i+"]="+vectorB[i]+"\n");
		}
	}

	public static void main(String[] args){
		llenaArreglo();
		imprimir();
		compara();
	}
	
}

Código Java – Elimina Elementos Repetidos


//Codificado por sAfOrAs
public class SyGEliminaElementosRepetidos{
	public static void main(String[] args)
	{
		SyGELiminaCaracteresNulos cadena= new SyGELiminaCaracteresNulos();
		char[] arraycar={'p','a','j','a','r','r','a','c','o'};
		String sCadenaSinBlancos="";
		System.out.println(arraycar);

		for(int i=0;i<arraycar.length;i++){
			for(int j=0;j<arraycar.length-1;j++){
				if(i!=j){
					if(arraycar[i]==arraycar[j]){
						arraycar[j]=' ';
					}
				}
			}
		}

		String s = new String(arraycar);
		cadena.eliminaEspacio(s,sCadenaSinBlancos);
	}
}

Código Java – Números Primos


//Codificado por: sAfOrAs
//LIstar los numeros según el numero de digitos indicado
//Considero solo hasta numeros menores a 100000 (5 digitos), por el hecho de k buscar numeros primos a partir de 6 digitos, el proceso se hace muy lento.
public class SyGNumerosPrimos
{
	public static void main(String arg[])
    	{
		int numDigitos=0;
		int ndigitos=0;
		numDigitos=Integer.parseInt(arg[0]);
		if(numDigitos<=0)
			System.out.println("Ingrese como parámetro, un numero de digitos correcto (mayor que 0): ");
        	for(int i = 1; i <= 99999; i++ )
		{
			ndigitos=contarDigitos(i);
			if(ndigitos==numDigitos)
				if (primo(i) == true) 
					System.out.println(i);    
		}
    	}

    	public static boolean primo(int num)
    	{
        	boolean p = false;
    
        	if (num < 4) p = true;
        	else
        	{
			if (num % 2 == 0) p = false; 
            	else
            	{
                	int contador = 0;  
                	int i = 1; 
                	int limite = (num - 1) / 2; 
                	if  (limite % 2 == 0) limite--;  
            
                	while(i <= limite)
                	{
                		if (num % i == 0) contador++;
                    		i += 2;
                    		if (contador == 2) i = limite + 1;
                	}

		if (contador == 1) p = true;
            } 
        } 
    
        return p;
    }

	public static int contarDigitos(int numeroEntero)
	{
	        int divisionEntera = numeroEntero;

	        int contador=0;

	        while (divisionEntera != 0)
		{
		    divisionEntera = divisionEntera / 10;
		    contador++;
		}
	return contador;
	}

}

Código Java – Ordenar Array (Par, Impar)


//Codificado por sAfOrAs
public class SyGOrdenaArrayParImpar
{
	static int [][]arreglo=new int[2][5];

	static int x=0,y=0,z=0;
	static void llenaArreglo()
	{
		for(int i=0;i<arreglo.length;i++)
		{
			for(int j=0;j<arreglo[i].length;j++)
			{
				z=(int)(Math.random()*100+1);
				if(z%2==0)
				{
					arreglo[0][j]=z;
					x++;
				}
				else
				{
					arreglo[1][j]=z;
					y++;
				}
			}
		}
	}

	static void imprime()
	{
		System.out.println("Superior - Pares");
		for(int i=0;i<arreglo.length;i++)
		{
			for(int j=0;j<arreglo[i].length;j++)
			{
				System.out.print("Arreglo["+i+"]["+j+"] : "+arreglo[i][j]);
				System.out.println("");
			}
			if(i<arreglo.length-1)
				System.out.println("Inferior - Impares");
		}

	}

	public static void main(String[] args)
	{
		llenaArreglo();
		imprime();
	}

}

Código Java – Temperatura (Fahrenheit / Celsius)


//Codificado por sAfOrAs
import javax.swing.JOptionPane;
public class DSCTemperatura
{
	/*
	La relación entre grados Celsius (C) y grados Fahrenheit (F) es la siguiente: F - 32 = 1,8 * C
	*/
	double FahrenheitCelsius(double grado)
	{
		double gCelsius=(grado-32)/1.8;
		return gCelsius;
	}

	double CelsiusFahrenheit(double grado)
	{
		double gFahrenheit=(grado*1.8)+32;
		return gFahrenheit;
	}

	public static void main(String[] args)
	{
		double grado=0,gCelsius=0,gFahrenheit=0;
		DSCTemperatura temp = new DSCTemperatura();

		int opcion=0;
		String cadena;
	do{
	cadena=JOptionPane.showInputDialog("\n [1] Convertir Fahrenheit - Celsius \n [2] Convertir Celsius - Fahrenheit");
	opcion=Integer.parseInt(cadena);
	}while(opcion<1 || opcion>2);
			cadena=JOptionPane.showInputDialog("Ingrese la temperatura: ");
			grado=Double.parseDouble(cadena);
		
	switch(opcion)
		{

			case 1: {
				gCelsius=temp.FahrenheitCelsius(grado);
				JOptionPane.showMessageDialog(null," TEMPERATURA: "+gCelsius + " Celsius");
				};break;
			       
				
			case 2: {
				gFahrenheit=temp.CelsiusFahrenheit(grado);
				JOptionPane.showMessageDialog(null," TEMPERATURA: "+gFahrenheit +" Fahrenheit");
				};break;
		}

	}
}

Código Java – Factorial


//Codificado por sAfOrAs
public class Arrayfactos
{static long factos[]=new long[25];
 static long factorial(int z)
 {long fac=1;
  for(int i=1;i<=z;i++)
  	fac=fac*i;
  	return fac;
 }

 static void imprimir(long x[],String nombre)
	{
		for(int i=0; i<x.length;i++)
		{
			System.out.println(nombre+"\t["+(+i+1)+"]="+x[i]+"\t");
			//if(i%5==0)System.out.println("\t");
			System.out.println("");
		}
	}

 static long [] rellenarfactorial(long x[])
 {
 	for(int i=1;i<x.length+1;i++)
 	x[i-1]=factorial(i);
 	return x;
 }

 public static void main (String []datos)
 {
  rellenarfactorial(factos);
  imprimir(factos,"factos");
 }
}

Código Java – Temperatura Mensual


//Codificado por: sAfOrAs
import javax.swing.*;
public class SyGTemperaturaMensual
{
	static int MAX=5;
	int tempSup=25;		

	int[] almacenaArray()
	{
		int []arreglo=new int[MAX];
		String cadena;
		
		for(int i=0;i<MAX;i++)
		{	
			do{
			cadena=JOptionPane.showInputDialog("Ingrese Temperatura "+ (i+1)+" : ");
			arreglo[i]=Integer.parseInt(cadena);
				if((arreglo[i]<5)||(arreglo[i]>40))
				{
					JOptionPane.showMessageDialog(null,"La temperatura debe ser de 5 y 40.");
				}
			}while((arreglo[i]<5)||(arreglo[i]>40));
		}
		return arreglo;
	}
	int temperaturaSuperada(int array[])
	{
		
		int contador=0;

		for(int i=0;i<array.length;i++)
		{
			if(array[i]>tempSup)
				contador=contador+1;
		}
		JOptionPane.showMessageDialog(null, "Las Temperaturas mayores a "+tempSup+" son: "+contador);
		return contador;
	}
	
	int promedioTemperaturaSuperior(int temperaturaSuperiorA, int array[])
	{
		int contador=0, acu=0;
		double promedioTemp=0;
		for(int i=0;i<array.length;i++)
		{
			if(array[i]>tempSup)
			{
			acu=acu+array[i];
			}
		}
		promedioTemp=acu/temperaturaSuperiorA;
		JOptionPane.showMessageDialog(null, "El promedio de la temperaturas superiores a "+tempSup+" es: "+promedioTemp);
	return 0;
	}

	void temperaturaMaximaMensual(int array[])
	{
		int tmp=0;
		String cad="";
		int array2[] = new int[MAX];
		
		for(int i=0;i<array.length;i++)
		{
			array2[i]=array[i];
		}
	
		int k=0,x=0,c=0;
		for(int i=1;i<array2.length;i++)
		{
			if(array2[i-1]<array2[i])
			{	x=i;c++;	}
			//else
			//	return 0;
			
			for(int j=0;j<array2.length-i;j++)
			{

				
				if(array2[j]>array2[j+1])
				{
					k=array2[j+1]; array2[j+1]=array2[j]; array2[j]=k;
					
				}
				
			}
		}
		JOptionPane.showMessageDialog(null,"La temperatura: "+array2[MAX-1]+" Día: "+(x-1));
		
	}

	public static void main(String[] args)
	{
		
		int []array=new int[MAX];
		int temperaturaSuperiorA=0;
		int opcion=0;
		String cadena;
		int sup=25,retro=0;
		SyGTemperaturaMensual temperatura = new SyGTemperaturaMensual();
		do{
		   array=temperatura.almacenaArray();
		   do
		   {	retro=1;
			cadena=JOptionPane.showInputDialog("Seleccione una opción: \n 1) Temperatura Máxima del Mes. \n 2) Temperatura Superior a "+ sup +" ºC. \n 3) Promedio de temperaturas superiores a "  +sup+ " ºC. \n 4) Reiniciar.\n 5) Salir.");
			opcion=Integer.parseInt(cadena);
				
			switch(opcion)
			{
				case 1:temperatura.temperaturaMaximaMensual(array);break;
				case 2:temperaturaSuperiorA=temperatura.temperaturaSuperada(array);break;
				case 3:
					{
					if(temperaturaSuperiorA>0)
						temperatura.promedioTemperaturaSuperior(temperaturaSuperiorA, array);
					else
						JOptionPane.showMessageDialog(null,"No hay tenperaturas superiores a "+sup);
					}break;
				case 4:retro=0;break;
				case 5:System.exit(0);break;
			}
		   }while(retro==1);
		}while(retro==0);
							
	}
}

Código Java – Ejemplo de Matriz


//Codificado por sAfOrAs
public class Matriz
{
	static int MAX=100;
	static int a1[]=new int[MAX];
	static void rellenaraleatorios(int x[])
	{
		for(int i=0;i<x.length;i++)		
		{
			x[i]=(int)(Math.random()*100+1);
		}
	}
	
	static void imprimir(int x[])
	{
		for(int i=0;i<x.length;i++)
		{
			
			
			if(i%10==0)
				System.out.print(" \n ");
			
			System.out.print("  "+(i+1));
		}
	}

	//static void muestre(int y[])
	//{
//		System.out.print()
//	}

	public static void main(String[] args)
	{
		rellenaraleatorios(a1);
		imprimir(a1);
	}
}

Código Java – Evaluación(Asistencia, Nota, Promedio)


//Codificado por: sAfOrAs
//Utilizando el método Leer
public class SyGEvaluacion
{
	static int[] ingresar(int[] Vector, String cad)
	{
		int h=0;
		for(int i=0;i<Vector.length;i++)
		{
			System.out.print("Ingresar "+ cad+ ":\t");
			h=Leer.datoInt();System.out.println("");
			Vector[i]=h;
		}
		return Vector;
	}
	static void imprimir(int[] Temp)
	{
		for(int i=0;i<Temp.length;i++)
		{
			System.out.println(Temp[i]);
		}

	}
	static void pPresente(int[] A)
	{
		int c=0;
		for(int i=0;i<A.length;i++)
		{
			if(A[i]==1)
			c++;
		}
		System.out.println("La cantidad de alumnos presentes es :"+ c);
		System.out.println("El porcentaje de alumnos presentes es :"+ ((c*100)/(A.length))+"%");
	}
	static void promedio(int[] N, int[] A)
	{
		int sum=0,c=0;
		double prom=0;
		for(int i=0;i<A.length;i++)
		{
			if(A[i]==1)
			{
				c++;
				sum=sum+(N[i]);
			}

		}
		prom=sum/c;
		System.out.println("El promedio de los " + c + " alumnos presentes es :"+ prom);

	}
	static void aAprobados(int[] N, int[] A)
	{
		int ca=0,cp=0;

		for(int i=0;i<A.length;i++)
		{
			if(A[i]==1)
			{
				cp++;
				if(N[i]>5)
				{
					ca++;
				}
			}

		}

		System.out.println("El porcentaje de alumnos prest. y aproba. es :"+ ((ca*100)/(cp))+"%");
	}
	static void mayor(int[] C, int[] N, int[] A)
	{
		int may=0,i=0;

		for(i=0;i<N.length;i++)
		{
			if(A[i]==1)
			{
				if(N[i]>may) may= N[i];

			}

		}
		for(i=0;i<N.length;i++)
			{
				if(may==N[i] && A[i]==1)
				System.out.println("Codigo : " + C[i] + " y su Nota : " + N[i]);
			}
	}
	public static void main(String args[])
	{
		int max=0;
		do{
		System.out.print("Cuantos registros desea ingresar :\t");
		max=Leer.datoInt();System.out.println("");
			if(max<1)
				System.out.println("¿Acaso quieres engañar a la maquina?, Ingrese un valor válido!!");
		}while(max<1);
		int [] Codigo= new int[max];
		int [] Asistencia= new int[max];
		int [] Nota= new int[max];
		System.out.println("----------------------------------------");
		ingresar(Codigo,"codigo [0001 - 9999]");

		System.out.println("----------------------------------------");
		ingresar(Asistencia,"asistencia [1. Presente] [0. Ausente]  ");

		System.out.println("----------------------------------------");
		ingresar(Nota,"nota [00 - 20]");

		System.out.println("----------------------------------------");
		System.out.println("-------------  REPORTE  ----------------");
		pPresente(Asistencia);
		promedio(Nota,Asistencia);
		aAprobados(Nota,Asistencia);
		mayor(Codigo,Nota,Asistencia);
		System.out.println("----------------------------------------");
	}
}

Código Java – Simplificar Fracción


//Codificado por: sAfOrAs
import javax.swing.*;
public class SyGFraccion{
	
	void mostrarFraccionSimplificada(int numerador, int denominador)
	{
		int div=0;
		if((numerador % denominador)==0)
		{
			div=numerador/denominador;
			JOptionPane.showMessageDialog(null,""+div);
		}
		else if((denominador % numerador)==0)
		{
			div=denominador/numerador;
			JOptionPane.showMessageDialog(null,"1/"+div);
		}
		else
			JOptionPane.showMessageDialog(null,""+numerador+"/"+denominador);
		
		
	}

	void ingresaFraccion()
	{
		int numerador=0, denominador=0;
		String cadena;
		cadena=JOptionPane.showInputDialog("Ingrese Numerador : ");
		numerador=Integer.parseInt(cadena);
		cadena=JOptionPane.showInputDialog("Ingrese Denominador : ");
		denominador=Integer.parseInt(cadena);
		mostrarFraccionSimplificada(numerador,denominador);
	}
	public static void main(String[] args)
	{
		String cadena;
		int opcion=0;
		SyGFraccion fraccional = new SyGFraccion();
		do
		{
			cadena=JOptionPane.showInputDialog("0. Salir.  -----   [Otro] Continuar");
			opcion=Integer.parseInt(cadena);
			if(opcion==0)
				System.exit(0);
			else		
				fraccional.ingresaFraccion();
			
		}while(opcion!=0);		
	}
}

Código Java – Dados


//Codificado por sAfOrAs
public class Dados{
	static int MAX=20;
	static int a1[]=new int[MAX];
	static int a2[]=new int[MAX];
	static int a3[]=new int[MAX];
	static int pares[]=new int[MAX];
	
	static void rellenaraleatorios(int x[], int y[], int z[]){
		for(int i=0;i<x.length;i++)
		{
			x[i]=(int)(Math.random()*6+1);
			y[i]=(int)(Math.random()*6+1);
			z[i]=(int)(Math.random()*6+1);
		}
	}
		
	static void imprimir(int x[],String dado1,int y[],String dado2,int z[],String dado3){
		for(int i=0;i<x.length;i++){
			
			System.out.print("Lanzamiento "+(i+1)+" : \t");	
			System.out.print(dado1+"["+i+"]="+x[i]+"\t");
			System.out.print(dado2+"["+i+"]="+y[i]+"\t");
			System.out.println(dado3+"["+i+"]="+z[i]+"\t");
			revisarVector(x[i],y[i],z[i]);
		}
	}
	
	static void revisarVector(int dado1,int dado2,int dado3){
		
		
		//for(int i=0;i<m.length;i++){
			if(dado1==5 && dado2==3 && dado3==6)
			{
			System.out.println("100 veces la apuesta.");				
			}
//			else if(dado1==6 && dado2==6 && dado3==6)

		//}
		//return pos;
	}
	
	public static void main(String[] args){
		rellenaraleatorios(a1,a2,a3);
		int ultimo=0;
		imprimir(a1,"Dado 1",a2,"Dado 2",a3,"Dado 3");
//		rellenaraleatorios(a2);
//		imprimir(a2,"Dado 2");
//		rellenaraleatorios(a3);
//		imprimir(a3,"Dado 3");
		//ultimo=extraerpares(a1,pares,0);
		//imprimir(pares,"pares");
		//ultimo=extraerpares(a2,pares,ultimo);
		//imprimir(pares,"pares");
	}
}

Código Java – Pares e Impares


//Codificado por sAfOrAs
public class SyGMoverParesImpares
{
	static int MAX=100;
	static int A[]=new int[MAX];
	static int B[]=new int[MAX];
	static int C[]=new int[MAX];
	static int x=0,y=0;

	static void llenaArreglo()
	{
		for(int i=0;i<A.length;i++)
		{
			A[i]=(int)(Math.random()*100+1);
			separa(A[i]);
		}	
	}

	static void imprimeArreglo()
	{
		for(int i=0;i<A.length;i++)
		{
			System.out.print("\t Todos ["+i+"] : "+A[i]);
			System.out.println("");
		}
		System.out.print("\n----------------------------------------------\n");
		
		for(int i=0;i<x;i++)
		{
			System.out.print("\t Par ["+i+"] : "+B[i]);
			System.out.println("");
		}
		System.out.print("\n----------------------------------------------\n");

		for(int i=0;i<y;i++)
		{
			System.out.print("\t Impar ["+i+"] : "+C[i]);
			System.out.println("");
		}


	}

	static void separa(int n)
	{
		
			if(n%2==0)
			{
				B[x]=n;
				x++;
				ordenar(n,x);
			}
			else
			{
				C[y]=n;
				y++;
				ordenar(n,y);
			}
		
	}

	static void ordenar(int n,int tam)
	{
		int temp=0;
		if(tam>=2)
		{
			if(n%2==0)
			{
				for(int i=1;i<tam;i++)
				{
					for(int j=0;j<tam-i;j++)
					{
						if(B[j]>B[j+1])
						{
							temp=B[j];
							B[j]=B[j+1];
							B[j+1]=temp;
						}
					}
				}
			}
			else
			{
				for(int i=1;i<tam;i++)
				{
					for(int j=0;j<tam-i;j++)
					{
						if(C[j]>C[j+1])
						{
							temp=C[j];
							C[j]=C[j+1];
							C[j+1]=temp;
						}
					}
				}
			}
		}


	}

	public static void main(String[] args)
	{
		llenaArreglo();
		imprimeArreglo();
	} 
}
A %d blogueros les gusta esto: