h1

Ordenar Vector (Intercambio Directo)

13 octubre 2011

¡Buenas a todos!

Seguiremos  con la serie de tutoriales de tipos de algoritmos, como en otras ocasiones os he comentado, este tipo de tutoriales se llevaran a cabo en lenguaje C.

Hoy os enseñaré otra técnica para poder ordenar un vector con el algoritmo de intercambio directo. El desarrollo básico es que  compararemos pares de elementos y si están  desordenados  se ordenaran  de menor a mayor.

Primero llenaremos el vector  con números aleatorios mediante la función random. Y a continuación comenzaremos a desarrollar el algoritmo.

for (i=1; i<10; i++)

{

for (j=1; j<10-i; j++)

{

if (vector[j]> vector [j+1])   // comparamos si el valor actual es menor que el siguiente

{

aux=vector[j+1];

//  Si el valor que tiene el valor contiguo es mayor se almacena en una variable

vector[j+1]=vector[j];

//Se cambia el valor de la posicion actual a la posicion siguiente

vector[j]=aux;

//la posicion actual toma el valor menor

}

}

} 

Para poder descargar  el código completo desde el siguiente enlace

¡Un saludo!

h1

Ordenar Vector(Insercion directa)

7 octubre 2011

¡Buenas a todos!

Hoy vamos a aprender métodos de ordenación de un vector. Voy a ser una serie de tutoriales que versaran  sobre distintas formas de llevar a cabo la misma operación,  este tipo de artículos ayudarán sobre todo a las personas que  estén aprendiendo a programar y desarrollar algoritmos.

Este tipo de tutorial lo desarrollaré en Lenguaje C ya que creo que es uno de los más típicos con los que la gente aprende a programar y que todos más o menos conocemos su sintaxis.

Hoy os enseñaré a cómo  desarrollar la ordenación por método de  inserción directa. Tiene  cuatro pasos básicos.

  1. Tomar un elemento en la posición
  2. Buscar un lugar en sus posiciones anteriores
  3. Mover hacia la derecha los restantes
  4. Insertarlo


for (i=1; i<10; i++) // recorreremos el vector
{
vector[0]=vector[i]; // almacenaremos el valor
posicion=i; //almacenaremos la posicion
while (vector[0]<vector[posicion-1])
//compararemos si ese valor es menor que los anteriores y si es así moveremos los valores hacia la derecha hasta encontrar su posición
{
vector[posicion]=vector[posicion-1];
posicion--;
}
vector[posicion]=vector[0]; // insertaremos el valor en la posición correcta
}

Para poder descargar  el código por completo pincharemos en el siguiente enlace.

¡Un saludo!

h1

Instalar Plantillas(Joomla 1.6)

20 septiembre 2011

¡Buenas a todos!

Hoy os enseñaré  como poder instalar plantillas en Joomla. Las plantillas es una de las  utilidades que tiene Joomla más destacadas.

Podremos encontrar cantidad de plantillas gratuitas en internet, buscando encontraremos la que se pueda ajustar más a nuestras necesidades.

Después de haber encontrado la plantilla que encaje con lo que buscamos, entramos en la página principal de Joomla y pinchamos en 

Extensiones–> Gestión de Extensiones

En el primer apartado del formulario  “Subir archivo de paquete” enlazaremos  la carpeta comprimida donde se encuentre nuestra plantilla y pincharemos en Subir e Instalar.

Con estos dos sencillos pasos podremos instalar  la plantilla dentro de Joomla.

¡Un saludo!

h1

Instalar Joomla

16 septiembre 2011

¡Buenas a todos!
Hoy os enseñaré como poder instalar la aplicación Joomla . Joomla nació para la creación de páginas web de forma mucho más sencilla y basada en un desarrollo a partir de plantillas que podemos desarrollar.
Primeramente comprobaremos la operatividad de WAMP. Como primer paso descargaremos la versión más actual de Joomla desde la website: http://www.joomlaspanish.org/ . Lo descargamos de esta página porque el material se encuentra en castellano, pero podéis descargarlo desde cualquier sitio web. Descomprimiremos el contenido del archivo descargado en la carpeta www que se encuentra en el directorio de WAMP
Después desde la página principal de phpMyAdmin creamos la base de datos que necesita Joomla para su funcionamiento.

A partir de este momento escribiremos en la barra de direcciones del navegador que esté vinculado a nuestro servidor la siguiente dirección:  http://localhost/installation/index.php

Elegiremos el idioma de instalación de Joomla y pincharemos en siguiente.

Este paso comprobaremos que  los SI aparecen   y pincharemos en Siguiente

Aceptaremos la  licencia que nos muestra Joomla.

En este paso debemos de indicar los siguientes datos

Nombre del host: localhost

Usuario: root

Nombre de la base de datos: joomla

Y pincharemos en siguiente.

En este paso no cambiaremos nada y pincharemos en siguiente

Rellenaremos los campos con datos reales, en caso de querer usar “datos de ejemplo” pincharemos en un botón que aparece más abajo. Esta opción es recomendada para usuarios que no van a trabajar de forma continua con esta aplicación.

En este último paso haremos caso del mensaje que nos aparece y pincharemos en el botón de “eliminar la carpeta de instalación” cuando nos aparece el mensaje de  que se ha llevado a cabo dicha operación  pincharemos en Administración y empezaremos a trabajar con  Joomla.

¡Un saludo!

h1

Lógica de Predicados (Capitulo II)

12 julio 2011

¡Buenas a todos!

Hoy continuaré con el tutorial sobre Lógica de Predicados que comencé hace unas semanas. Después de averiguar cómo  poder obtener conclusiones de dos predicados  expuestos… hoy lo pasaremos a la  simbología de Lógica de Predicados.

Tenemos dos tipos de cuantificadores en la lógica de predicados:

∀: Cuantificador universal: TODO

∃: Cuantificador existencial: ALGUN

Y nos ayudaremos con los símbolos de la lógica proposicional

→: Si… entonces, por lo tanto

: Y

: O

¬ : NO

A partir de los símbolos descritos  vamos a pasar las sentencias a predicados:

“Algunos múltiplos de 3 son múltiplos de 4”

  • ∃x(Px→Qx)

“Todo múltiplo de 4 es múltiplo de 3”

  • ∀x(Qx→Px)

“Todos los leones son felinos”

  • ¬∃x(Lx∧¬Fx)

“Algún león es gato”

  • ¬∀x(Lx→¬Gx)

Podemos observar que introduciendo negaciones creamos nuevas combinaciones para el uso de los cuantificadores Todo y Algun. Hay que practicar mucho este tipo de ejercicios para poder  coger un dominio sobre ellos.

¡Un saludo!

h1

Ocultar avisos de warning en PHP

5 julio 2011

¡Hola a todos!

Hoy os voy a  enseñar una funcionalidad de PHP muy sencilla: ocultar los warning en el propio código fuente del php;

Esta funcionalidad  es sumamente sencilla y nos puede sacar de avisos que son feos de ver  en el acabado final de nuestra página web.

Comprobaremos en que línea del código nos da el aviso, y  en la línea que nos marque el código php le pondremos delante una “@”  de este modo

@session_start( );

Otro ejemplo puede ser :

@$fp = fopen($archivo,"r");

Seguro que esta herramienta la acabáis usando en algún momento.

¡Un saludo!

h1

Concatenar cadenas en Java

25 junio 2011

¡Buenas a todos!

Hoy os voy a haces un ejemplo de cómo concatenar variables en Java, os presentaré dos formas para poder hacerlo: el función tradicional ( mediante símbolos de conjunción) o mediante la función concat.

El símbolo de conjunción de strings en Java es  +, mediante él podremos  concatenar cadenas  de caracteres.

public static void main(String[] args) {
String var1= new String("Hola");
String var2= new String("mundo");
String cadena1=  var1 + " "+ var2;
JOptionPane.showMessageDialog( null, cadena1);
}

El  la función Concat hace lo mismo que el símbolo.

public static void main(String[] args) {
String var2= new String("mundo");
String var3=new String("Adios ");
String cadena2= var3.concat(var2);
JOptionPane.showMessageDialog( null, cadena2);
}

¡Un saludo!

h1

Lógica de Predicados (Capitulo I)

17 junio 2011

¡Buenas a todos!

Hoy os hablaré de como poder desarrollar las conclusiones de las logicas de predicados. En lógica de predicados estarán expuestos varios universos ( casas, coches,  rubios, hombres, animales, peces..) y los denominaremos a partir de una letra cada universo  ( para poder  trabajar más comodamente) .

Generalmente se nos  mostrarán varias sentencias a las cuales deberemos de buscar una conclusión… Esta conclusión  la buscaremos a partir de esta tabla que os muestro a continuación.

Y aquí os dejo unos ejemplos  desarrollados para que podais  ver como efectuamos  su desarrollo.

  • Todos los artistas son ególatras
  • Algunos artistas son indigentes

———————————————————————-

  • Algunos indigentes son ególatras
  • Algún hombre no es andaluz
  • Todo hombre es mortal

——————————————————————–

  • Algún mortal no es andaluz
  • Algún hombre es rubio
  • Ningún chino es rubio

———————————————————————

  • Algún hombre (no) es chino
  • Algún español es gaditano
  • Todo gaditano es andaluz

———————————————————————-

  • Algún andaluz es español
  • Algunos múltiplos de 3 son múltiplos de 4
  • Todo múltiplo de 4 es múltiplo de 2

———————————————————————-

  • Algunos múltiplos de 3 son múltiplos de 2

¡Un saludo!

h1

Galeria animada en CSS

10 junio 2011

¡Buenas a todos!

Hoy os voy a explicar cómo poder hacer una galería de fotos con movimiento en CSS 3.0.
Aun quedan muchas cosas por acabar de completar ya que este ejemplo no puede ejecutarse en Internet Explorer y su comportamiento difiere entre el navegador Chrome y Mozilla. Cuando estas opciones estén estandarizadas para todos los navegadores eliminaremos –webkit- de la etiqueta.
En Mozilla veremos fotos sobrepuestas que dependiendo donde ponemos el ratón veremos una foto entra u otra. Sin embargo en Chrome estas fotos se giraran cuando entremos en la zona sensible de la foto.
En el código html iremos insertando una div por imagen que vayamos a insertar dentro de un div general llamado galería.
Cada div de imagen tiene un estilo propio donde se sitúa en la página web.

#img1 {
top: 150px;
left: 130px;
z-index:1;
}

Diseñaremos la capa para que en cada div tenga un borde, una sombra y que haya trozos que no se vean cuando este el ratón este fuera de la zona sensible de la foto.

#galeria div {
position: absolute;
overflow: hidden;
opacity: 0.9;
-webkit-transition: all 0.5s linear;
-webkit-border-radius: 15px;
border-radius: 15px;
-webkit-box-shadow: -3px -3px 50px #666;
box-shadow: -3px -3px 50px #666;
-webkit-transform: scale(0.60);
}

Cuando pongamos el ratón encima de la foto la foto se pondrá en un primer plano (el efecto que veremos en Mozilla) o se girara unos grados (esto lo veremos en Chrome).


#galeria div:hover {
z-index:599;
-webkit-transform: rotate(10deg);
opacity: 1;
}

Podemos ver el ejemplo en funcionamiento desde este enlace.
¡Un saludo!

h1

Calculadora JAVA

1 junio 2011

¡Buenas a todos!

Hoy  os presentaré el segundo tutorial de JAVA. En este caso vamos a  desarrollar una calculadora (con formulario).

El formulario de  la calculadora está desarrollado con la implementación de Interfaces que  proporciona NetBeans, así que no os puedo explicar el código de él.

Definimos las variables
public class formulario extends javax.swing.JDialog {
double variable1,variable2,total;
boolean sumar,resta,multiplicacion,division;}

Prograremos el botón borrar para que se limpie la pantalla cuando pinchemos sobre él.

private void botonBorrarActionPerformed(java.awt.event.ActionEvent evt) {
pantalla.setText("");
}

Si pinchamos en algún botón de los números se marcara el valor de este botón en la pantalla de la calculadora
private void boton1ActionPerformed(java.awt.event.ActionEvent evt) {
pantalla.setText(pantalla.getText()+boton1.getText());
}

Cuando pinchemos en alguna de las operaciones que se pueden hacer, el valor de la pantalla se almacena en variable1,  limpiamos la pantalla y convertimos  en TRUE la operación que queremos ejecutar.
private void botonSumarActionPerformed(java.awt.event.ActionEvent evt) {
variable1=(Double.parseDouble(String.valueOf(pantalla.getText())));
pantalla.setText("");
sumar=true;
}

Cuando pulsamos el botón de igual, el valor de la pantalla se guardara en la segunda variable y comprobaremos mediante condiciones cual es la operación a ejecutar. Ejecutaremos la operación ,  mostraremos  el resultado por pantalla e inicializaremos    las variables de nuevo.

private void botonIgualActionPerformed(java.awt.event.ActionEvent evt) {
variable2=(Double.parseDouble(String.valueOf(pantalla.getText())));
if(sumar==true)
{
total=variable1+variable2;
pantalla.setText((String.valueOf(total)));
variable1=0;
variable2=0;
sumar=false;
}

Aquí tenéis un enlace donde podéis descargar el código en completo.

¡Un saludo!