Tag Archive for tutorial

Como hacer un menu horizontal con html5 y css3

En esta practica les traigo como hacer un menu horizontal utilizando html5 y css3 naturalmente, a continuación el video tutorial  y posteriormente el codigo de la practica para que puedan replicarlo en sus casas.

Video tutorial

Codigo CSS

/*Body*/
body
{
	margin:0px;
	padding-top:5px;
}

#main_container
{
	width:90%;
	margin-left:5%;
	padding-top:5px;
	padding-bottom:5px;
	float:left;
	border: 3px outset;
}

/*Content*/

.content{
	width:90%;
	margin-top:5px;
	margin-left:5%;
	padding-bottom:50px;
	background:#ffffff;
	border: 1px dashed;
	height: auto;
	float:left;
}

.content article
{
	padding: 3%;

}

.content article h2
{

}

/*Header*/

.header
{
	width:90%;
	margin-top:5px;
	margin-left:5%;
	background:#ffffff;
	border: 3px outset;
	height: 200px;
	float:left;
}

/*Menu */
.top_menu ul
{
	list-style:none;
	float:left;
	border: 1px dashed;
	padding: 2%;
	width:95%;
}

.top_menu ul li
{
	float:left;
	margin-right:20px;
	margin-bottom:10px;
	background: #ff812d;
	padding:5px;
	border-radius: 15%;
}
.top_menu ul li a
{
	color: #FFFFFF;
	text-decoration:none;
}
.top_menu ul li a:hover
{
	color: blue;
}

/*Footer*/
.footer
{
	width:90%;
	margin-top:5px;
	margin-left:5%;
	background:#ffffff;
	border: 3px outset;
	height: 110px;
	float:left;
}

.footer_msg
{
	margin-top: 40px;
float: left;
margin-left: 5%;
font-size: 0.8em;
color: rgb(126, 126, 126);
}

 Codigo html:

<!DOCTYPE  html>
<html>
<head>
	<meta charset="UTF-8">
	<title>Codigoprogramacion.com</title>
	<link rel="stylesheet" type="text/css" href="style.css" />
</head>
<body>
	<section id="main_container">
		<header class="header">
			<h1>Tutoriales - Html/Css</h1>
			<nav class="top_menu">
				<ul>
					<li><a href="#">Item 1</a></li>
					<li><a href="#">Item 2</a></li>
					<li><a href="#">Item 3</a></li>
					<li><a href="#">Item 1</a></li>
					<li><a href="#">Item 2</a></li>
					<li><a href="#">Item 3</a></li>
				</ul>
			</nav>
		</header>

		<section class="content">
			<article>
				<h2>Lorem Ipsum</h2>
				<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec sit amet scelerisque arcu, vitae mattis turpis.
				 Cras dictum nisl non vulputate mollis. Vestibulum in elit vel sapien venenatis aliquam tincidunt nec arcu. 
				Pellentesque non consequat felis, ac accumsan tellus. Donec sem magna, sagittis nec erat fringilla, commodo aliquet massa.
				Mauris risus lectus, ornare vel venenatis a, rutrum at augue. Nam eget turpis at metus commodo dignissim sit amet id lectus. 
				Aliquam consectetur sem eget sem vehicula, nec laoreet felis pellentesque. Vivamus turpis ipsum, rutrum facilisis est semper,
				egestas congue nibh. Maecenas sodales leo sed quam lacinia luctus. Aliquam scelerisque rutrum nisi, ut tincidunt lorem pharetra in.
				 Curabitur malesuada dolor ac accumsan ornare. Curabitur pellentesque gravida ipsum, at elementum tortor convallis nec. Aenean
				  condimentum, nunc ac tincidunt tristique, odio ante euismod ligula, et ullamcorper mauris nisi ut ligula. Vivamus faucibus mattis
				   turpis ac aliquet. Nam elementum velit ut lectus vestibulum, eu pretium turpis vehicula.
				</p>
			</article>
		</section>
		<footer class="footer">
			<span class="footer_msg"> Este es el pie de página - codigoprogramacion.com</span>
		</footer>
	</section>
</body>	
</html>

 

Hashes en Ruby.

Un diccionario es muy parecido a un arreglo, con la diferencia más clara es que tú defines en qué posición se guarda el arreglo. Una aproximación clara de lo que es un hash se da con los diccionarios (por eso puedes llamarlo de las 2 maneras), cuando buscas algo en un diccionario no lo haces a través de números, ni el diccionario está ordenado de manera aleatoria, existe una relación entre el contenido y la posición en la que está guardado.

Si lo anterior no te queda aún muy claro veamos cómo definir un hash:

lenguajes = Hash.new
lenguajes["ruby"] = "Creado por Matz"
lenguajes["python"] = "No puntos y coma ni llaves"
lenguajes["java"] =" Lenguaje compilado"

Considero que el ejemplo anterior es bastante explícito, es una de las formas de declarar un hash, como instancia de la clase Hash. Vemos cómo asignamos una cadena a un index, cada index es el nombre de un lenguaje y el valor es una característica del lenguaje, si quisiéramos saber algo sobre JAVA, haríamos:

puts lenguajes["java"]

Mucho más claro y sencillo, además de más rápido que un arreglo, ahora bien, veamos una forma más de declarar un Hash:

lenguajes = {'ruby' => 'Creado por Matz', 'python' => 'Lenguaje interpretado'}

Como puedes ver el index, va seguido del operador => que signa el valor. Al ser igual al ejemplo anterior considero que no hay mucha dificultad para relacionar ambos ejemplos.

Ahora bien, eso es lo que por ahora necesitas saber sobre los Hashes, sin embargo hay algo muy interesante en Ruby que se conoce como símbolos, los símbolos son los objetos más sencillos, sólo tienen un nombre y un id, éste id los identifica, no pueden haber dos símbolos del mismo nombre, ésto es muy interesante porque tú por ejemplo puedes tener dos cadenas así:

"Hola mundo"
"Hola mundo"

Pero no dos símbolos así:

:hola_mundo
:hola_mundo

En el primer ejemplo, ambas cadenas son distintas, en el segundo amos símbolos son el mismo. Esto es útil con los hashes porque aumenta la velocidad de los mismos, puesto que Ruby no tiene que estarlos declarando constantemente, con una vez basta, veamos cómo usar símbolos con hashes:

lenguajes = Hash.new
lenguajes[:ruby] = "Creado por Matz"
lenguajes[:python] = "No puntos y coma ni llaves"
lenguajes[:java] =" Lenguaje compilado"

Muy sencillo, nota como cada símbolo se identifica porque su nombre inicia con :.

Con esto terminamos lo que corresponde a hashes, seguramente los usaremos más adelante, así que haz varias pruebas con ellos, de ahora en adelante nos adentraremos en la programación orientada a objetos con Ruby.

Operaciones usando arreglos con Ruby

Los arreglos tienen utilidad en muchísimas aplicaciones, en el artículo anterior vimos cómo definirlos en Ruby, y en éste veremos algunas operaciones básicas utilizando arreglas, todas éstas provenientes del Kernel de Ruby.

La primera operación que querrás ejecutar sobre un arreglo, seguramente será la de recorrerlo, es decir, ir a través de todos sus elementos, ya sea para usarlos o para buscar algún elemento.

Mi ciclo de recorrido favorito en Ruby, es el que se ejecuta a través del método each, éste método pertenece a la clase Array en Ruby, lo que significa que todos los arreglos lo tienen. Cabe mencionar que hay varias formas de recorrer arreglos en Ruby además de las que veremos (un par), luego de haber dicho ésto veamos el ejemplo:

lenguajes = ["Ruby","Python","JAVA","javaScript"]
lenguajes.each do |lenguaje|
  puts lenguaje
end

Lo que me gusta acerca de each es lo claro de la sintaxis, es decir, a simple vista puedes ver cómo funciona el método. Si aún hay cosas que no te quedan claras, te explico. El método each se aplica sobre el arreglo, en el ejemplo, nuestro arreglo es lenguajes, y se manda un bloque (ojo con esto), este bloque itera cada elemento dentro del arreglo y lo almacena sobre la variable lenguaje, es decir, en cada iteración, el elemento actual está en lenguaje, por eso si ejecutas lo anterior verás como con puts, imprimimos cada cadena del arreglo.

Lo anterior, fue algo bastante del estilo Ruby, si quieres algo más convencional podrías recorrer el arreglo con un ciclo for in, veamos el ejemplo:

for i in lenguajes
  puts i
end

Como ves, esto es algo más parecido a lenguajes comunes como JAVA, i es la variable que toma el valor dentro del arreglo, que en este ejemplo retomamos el anterior arreglo lenguajes. Sencillo ¿no?

Veamos ahora algo un poco más complicado. Lo que veremos es el método map, que también es parte de la clase Array. Map, itera cada uno de los elementos, le aplica las modificaciones que tú definas en un bloque, y retorna un nuevo arreglo con las modificaciones, aquí el ejemplo:

lenguajes = ["python","ruby","java"] #todos minusculas
nuevoArreglo = lenguajes.map{|lenguaje| lenguaje.capitalize}
nuevoArreglo.each do |l|
   puts l
end

Te invito a que pruebes el anterior ejemplo en tu instalación de Ruby, lo que verás es cómo cada uno de los elementos en lenguaje se pasan a nuevoArreglo, pero con la primera letra en mayúsucula (por el método capitalize), como verás, map también se ejecuta con un bloque, ésta vez delimitado por {}, adentro definimos una variable para almacenar cada iteración del arreglo, llamada lenguaje, y luego modificamos la variable, en éste ejemplo colocamos la primera letra en mayúscula, genial ¿no?

Lo anterior puede que haya sido un poco complejo si estás iniciando a programar, no te preocupes si no te quedó del todo claro, te aseguro que en el momento en que requieras una operación como la anterior, podrás venir aquí y todo quedará más claro.

Existen muchísimas otras operaciones que se pueden ejecutar con arreglos, por ejemplo ordenarlo:

calificaciones = [10,8,6,9]
calificaciones.sort

Obtener el tamaño del arreglo:

calificaciones.size()

Y así podríamos seguir mencionando otros, pero para no complicar más el curso básico, lo dejaremos ahí por ahora.

Bien, por ahora dejaremos los arreglos para que en el siguiente artículo pasemos a ver los Hashes o Diccionarios.

Sentencias If/else en C – toma de decisiones

En C también tenemos un metodo muy sencillo para tomar decisiones dentro de nuestro programa, por ejemplo, ¿Que pasaría si yo quiero ejecutar una pieza de codigo si una variable llamada X vale mas de 10, y otra si vale menos? Esto se hace con la sentencia if.

Sintaxis de If en C

La sintaxis es la siguiente:

if(expresion)
{
   /* Ejecutar codigo si la expresion es verdadera*/
}

Donde “expresion” es el resultado de una operación logica que solo puede tener como resultado verdadero o falso (true o false).

Por ejemplo, en el siguiente codigo evaluamos una variable, si esta es mayor a 10, imprimiremos un mensaje.

int x = 15;
if(x > 10)
{
  printf("La variable X es mayor a 10.\n");
}

En el ejemplo se ve claramente que al declarar x se le asigna el valor de 15, y posteriormente lo evaluamos, el resultado del programa naturalmente debera mostrar el mensaje “La variable X es mayor a 10″ puesto que esta expresión es verdadera.

Video tutorial de la sentencia if en lenguaje C

Tomando una ruta alternativa con else

En dado caso que queramos ejecutar un codigo alternativo si la expresión evaluada con if es incierta, tenemos la sentencia else que nos permite hacerlo.

Para ello tomemos el siguiente ejemplo, similar al anterior evaluamos si una variable x es mayor a 10, pero en este caso como esto no será así, desplegaremos un codigo alternativo encerrado entre las llaves del “else”.

int x = 5;
if(x > 10)
{
  printf("La variable X es mayor a 10.\n");
}
else
{
    printf("La variable X NO es mayor a 10.\n");
}

Como resultado de este ejemplo imprimriamos el mensaje “La variable X NO es mayor a 10″.

Espero que este tutorial haya sido de su utilidad, esten al pendiente de los proximos.