jueves, 31 de octubre de 2019

Strings I - Curso desde cero de JavaScript Capítulo 17

strings en JavaScript

Strings JavaScript

Ya hemos visto de sobra que son los strings, pero no hemos profundizado todavía en su 
uso. Por eso, voy a mostrar unos cuantos ejemplos prácticos en los siguientes capítulos.



Veamos un string básico:

<script> 
    
var texto = "Esto es un string";

</script>

Los strings pueden ir entre comillas dobles o simples o al menos, así era hasta la revisión ECMAScript 6 de JavaScript en la que se especificó que también podían escribirse con "backticks" en inglés o acentos abiertos en español.




<script> 
    
var texto1 = "Esto es un string en comillas dobles.";
var texto2 = 'Esto es un string en comillas simples.';
var texto3 = `Esto es un string en backticks.`;

</script>

Puede que te preguntes porqué complicar las cosas y poner varias formas de escribir strings. La razón es que podemos necesitar que aparezcan en pantalla las comillas y que JavaScript las interprete como nosotros queremos. Si quieres que aparezcan en pantalla unas comillas dobles por ejemplo tendrás que poner el string en comillas simples o en backticks.


<script> 
    
var textoIncorrecto = ""Este string es incorrecto."";
var textoCorrecto = ' "Este string es correcto." ';

</script>

Por si no queda claro veamos un ejemplo más:




<script> 
    
var texto1 = "Este string es correcto.";
var texto2 = ' "Este string es correcto." ';
  
document.write(texto1 + "<br>");
document.write(texto2);

</script>

Resultado de imprimir la variable textoCorrecto:

strings JavaScript



Dejo el primer capítulo de strings aquí. Todavía queda mucho más por ver. Lo veremos en los próximos capítulos.

miércoles, 30 de octubre de 2019

Cómo crear uno o varios directorios con MKDIR en Linux

Cómo crear uno o varios directorios con el comando MKDIR en Linux
crear varias carpetas en Linux

mkdir es un comando de Linux muy útil, nos crea carpetas.
Podemos crear una carpeta en el directorio activo en la Terminal con solo escribir esto:





mkdir nombreCarpeta

mkdir linux

Si queremos crear una carpeta en otro directorio diferente se tiene que especificar la ruta:





mkdir /ruta/nombreCarpeta

Como crear una carpeta en Linux mkdir

Para crear múltiples carpetas utiliza esta sintaxis, no hay límite, pon cuantas carpetas quieras:





mkdir {nombreCarpeta1,nombreCarpeta2,nombreCarpeta3,...} omkdir /ruta/ {nombreCarpeta1,nombreCarpeta2,nombreCarpeta3,...}

viernes, 25 de octubre de 2019

Arrays en Java I - Ejemplos prácticos

Arrays en Java I

Arrays Java

Los array son como variables con uno o más valores en su interior. Estos valores son numerados comenzando por el número 0, por lo que si un array tiene cuatro elementos o valores en su interior, la numeración de estos será 0,1,2 y 3.

Sintaxis de un array en Java

tipoDeDato[] nombreArray = {valor1, valor2, valor3,... }

En tipoDeDato pondremos cualquier tipo de dato que necesitemos, como puede ser int, string, etc.

Ejemplos prácticos de arrays en Java

Ejemplo 1

int[] numeros = {10, 50, 43, 60, 80, 1, 15};
  
System.out.println(numeros[0]);
System.out.println(numeros[1]);
System.out.println(numeros[2]);
System.out.println(numeros[3]);
System.out.println(numeros[4]);
System.out.println(numeros[5]);
System.out.println(numeros[6]);

Resultado


Array Java

Explicación

Se ha creado un array de tipo int llamado numeros con 7 valores que van de las posiciones 0 a 6. Estos valores se imprimen en pantalla llamando a las posiciones del array.

Ejemplo 2


String[] colores = {"rojo", "azul", "verde", "amarillo"};
  
System.out.println("El parchís clásico tiene 4 colores " + colores[3] + ", " + colores[1] + ", " + colores[0] + " y " + colores[2] + ".");

Resultado


Array String Java

Explicación

Se ha creado esta vez un array de tipo String, como puedes ver, se pueden concatenar los valores del array y en el orden que quieras.

Voy a dejar este capítulo aquí para que no se alargue demasiado, en el siguiente seguiremos viendo más cosas de los array.

jueves, 24 de octubre de 2019

Bootstrap 4 - La etiqueta kbd

Bootstrap 4 - La etiqueta kbd

etiqueta kbd bootstrap 4

Utilizando la etiqueta <kbd></kbd> puedes modificar los estilos de entradas para teclado. Bootstrap 4 nos brinda un magnífico diseño.




<body>
 
  <p>Utiliza <kbd>ctrl + c</kbd> para copiar y <kbd>ctrl + v</kbd> para pegar.</p>

</body>

Resultado


kbd bootstrap 4

Este es el estilo básico, pero con los colores de fondo de Bootstrap podemos añadir más colores:




<kbd>Sin clase</kbd>

<kbd class="bg-danger">Danger</kbd>
<kbd class="bg-dark">Dark</kbd>
<kbd class="bg-info">Info</kbd>
<kbd class="bg-light" style="color: black">Light</kbd>
<kbd class="bg-primary">Primary</kbd>
<kbd class="bg-secondary">Secondary</kbd>
<kbd class="bg-success">Success</kbd>
<kbd class="bg-transparent">Transparent</kbd>
<kbd class="bg-warning">Warning</kbd>
<kbd class="bg-white" style="color: black">White</kbd>

Resultado


Estilos kbd Bootstrap 4

Puedes añadir más estilos como por ejemplo bordes:




<kbd class="bg-danger" style="border: medium">Danger</kbd>
<kbd class="bg-dark" style="border: thick">Dark</kbd>
<kbd class="bg-info" style="border: dotted">Info</kbd>
<kbd class="bg-primary" style="border: double">Primary</kbd>
<kbd class="bg-secondary" style="border: solid">Secondary</kbd>
<kbd class="bg-success" style="border: dashed">Success</kbd>
<kbd class="bg-transparent" style="border: groove">Transparent</kbd>
<kbd class="bg-warning" style="border: inset">Warning</kbd>

Resultado

bordes kbd Bootstrap 4



martes, 22 de octubre de 2019

Listas / Arrays en Python IV - Añadir elementos con append - Curso Python de cero a profesional - Capítulo 14

Listas / Arrays en Python IV -  Insertar elementos con append

Listas en python append

En el capítulo anterior os enseñé cómo utilizar insert() para añadir elementos a las listas y especificar su posición exacta. 



Si no quieres poner la posición y simplemente quieres que se anexe en la última posición de la lista utiliza append().



Seguimos con la lista de frutas, quiero añadir plátano y manzana a la lista, para ello utilizaré append().


frutas = ['Fresa', 'Limón', 'Naranja']

frutas.append('Plátano')
frutas.append('Manzana')

print(frutas)

Resultado


append lista python

Los elementos se han añadido al final de la lista como estaba previsto.



También es necesario el uso de append() cuando utilizas la posición exacta de los elementos de una lista y estos no pueden variar de posición para que el código siga funcionando.

Listas / Arrays en Python III - Añadir elementos con insert - Curso Python de cero a profesional - Capítulo 13

Listas / Arrays en Python III -  Insertar elementos con insert

Listas en python del

Seguimos con las listas de Python, esta vez veremos como añadir nuevos elementos a una lista.



He creado una pequeña lista de frutas y en ella quiero añadir 2 elementos más, sandía y melón. 



Veamos cómo se hace:

frutas = ['Fresa', 'limón', 'Naranja']

frutas.insert(3, 'sandía')
frutas.insert(0, 'melón')

print(frutas)

Resultado
Listas insert python

Explicación
En la lista frutas Fresa se encuentra en la posición 0, limón en la 1 y Naranja en la 2.
Al poner el número 3 en el insert estoy haciendo que sandía quede en la última posición de la lista y con el 0 que melón se coloque en primer lugar desplazando a Fresa a la posición número 1.


Bucles en Java III - El bucle for

Bucles en Java III - El bucle for

Bucle for Java

Ya hemos visto hasta ahora dos de los tres bucles de Java. Es el turno del bucle for.
El bucle for es una estructura lógica que permite ejecutar el código de su interior repetidas veces siempre en cuanto se cumpla una condición booleana (true/false).

Sintaxis del bucle for en Java

for (declaración 1; declaración 2; declaración 3) {
   
     // Código del bucle.
   
}

La declaración 1 establece la condición del bucle con un valor.

La declaración 2 estable un segundo valor de la condición del bucle.

La declaración 3 establece el incremento del bucle.

Ejemplos prácticos con el bucle for de Java

for (int i=0; i<7; i++) {
   
     System.out.println("El valor de la variable i es: " + i);
   
}

Resultado
Bucle for Java
Explicación

En la primera declaración he creado la variable i (puedes llamarla como quieras en tus bucles) de tipo int. Le he dado un valor inicial de 0.

En la segunda declaración le he dicho que mientras i sea menor que 7 se ejecute el código del bucle.

En la tercera declaración, le he dicho que i va a incrementar de uno en uno su valor cada vez que el bucle for sea ejecutado. De este modo, el código de su interior es ejecutado un total de 7 veces.

Veamos otro ejemplo un pelín más complicado.


int i;
  
for (i=14; i>=7; i--) {
   
     System.out.println("El valor de la variable i es: " + i);
   
}

Resultado



Explicación

En este segundo ejemplo he declarado la variable fuera del bucle for para que sepas que también puedes utilizar variables externas al bucle. He iniciado dicha variable dentro del bucle (i=14;).
Esta vez la condición del bucle es que se ejecute mientras el valor de i sea mayor o igual a 7 (i<=7;) por lo que cuando valga 7 también se ejecutará.

En la última declaración del bucle le he dicho que me decremente el valor de de i (i--).

Para terminar veamos un tercer y último ejemplo:


int i;
  
for (i=0; i<=20; i+=5) {
   
     System.out.println("El valor de la variable i es: " + i);
    
}
Resultado



Explicación

El valor de i se incrementa de cinco en cinco.

Un último detalle, por si no te habías fijado, la tercera declaración del bucle for no tiene punto y coma, tenlo siempre en cuenta si no quieres producir errores de sintaxis.

Como siempre, te animo a que me animes a seguir escribiendo con tus comentarios y por supuesto, a que me preguntes algo si no lo entiendes.

[Solucionado] Error 0xc000000e Windows 10, 8.1, 8 y 7

Error 0xc000000e Windows 10, 8.1, 8 y 7

Windows 10


Es posible que cuando vayas a iniciar tu PC Windows te aparezca el error 0xc000000e.
Este error, te puede aparecer de diversas formas con mensajes ligeramente distintos, pero si aparece el mismo código de error, la solución es la misma para todos.




Cómo reparar el error 0xc000000e

Para solucionarlo, deberás contar con un pendrive o un disco con el instalador de Windows.

Solución 1 al error 0xc000000e

La solución más sencilla es utilizar la reparación automática de Windows, no obstante no funciona el 100% de las veces.



1- Arranca desde el pendrive o disco el instalador de Windows.
2- Haz click en la opción Solucionar problemas.
Opciones instalación Windows 10

3- Haz click en la opción Opciones avanzadas.
Solucionar problemas Windows 10



4- Haz click en Reparación de inicio y deja que intente arreglar el problema.
Reparación de inicio Windows 10


Solución 2 al error 0xc000000e

Si lees esto, es que el reparador automático de Windows no ha podido arreglar el problema.




Esta vez deberás reparar el BCD de Windows (sector de arranque maestro).

Para reparar el BCD sigue estos pasos:

1- Arranca desde el pendrive o disco el instalador de Windows.
2- Haz click en la opción Solucionar problemas.


Opciones instalación Windows 10

3- Haz click en la opción Opciones avanzadas.

Solucionar problemas Windows 10



4- Haz click en Símbolo del sistema para ejecutar la consola de Windows.

Símbolo del sistema en instalación Windows 10


5- Deberás escribir el comando bootrec /rebuildbcd y presionar la tecla enter.

¿Te ha sido útil? ¿No te funciona? Deja un comentario y te ayudaré en todo lo posible.



lunes, 21 de octubre de 2019

Cabeceras display Bootstrap 4 - Estilos para textos

Bootstrap 4 - Estilos para cabeceras display

Display Bootstrap 4

En este capítulo veremos la clase display para hacer que las cabeceras HTML sean más grandes y con un estilo de fuente más delgado.



Este es el estilo HTML de cabecera sin Bootstrap:


h1 html

Este es el estilo de cabecera con Bootstrap 4:


h1 header bootstrap 4



Y estos, los cuatro tipos de clase display:

Header display bootstrap 4


<html>
<head>
  <title>Cabeceras Display HTML</title>
  <meta charset="utf-8">
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css">
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
  <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js"></script>
  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"></script>
</head>
<body>

 <h1 class="display-1">Header Display 1.</h1>
 <h1 class="display-2">Header Display 2.</h1>
 <h1 class="display-3">Header Display 3.</h1>
 <h1 class="display-4">Header Display 4.</h1>

</body>
</html>




Listas / Arrays en Python II - Eliminar elementos con Del - Curso Python de cero a profesional - Capítulo 12

Listas / Arrays en Python II -  Eliminar elementos con Del

Listas en python del

En el capítulo anterior vimos cómo se crean las listas en Python. En este vamos a ver cómo modificar el contenido de estas listas, en concreto, voy a enseñarte a eliminar elementos.





Cuando creas programas complejos, en ocasiones necesitas que estas listas vayan cambiando constantemente.

Veamos un ejemplo, tenemos un videojuego en el que el jugador tiene una serie de logros por conseguir. Uno de eso logros, por ejemplo, son los disparos a la cabeza, conocidos también como headshots. El primero son 100, 1000 el segundo, 5000 el tercero y 25000 el cuarto. Podría quedar así:


logrosHeadshot = ['100Headshot', '1000Headshot', '5000Headshot', '25000Headshot']

A medida que el jugador vaya avanzando, se le irán sumando headshots a la variable contadorHeadshot. Cuando consiga el primer logro (100) se eliminará de la lista para evitar que cada 100 headshot que consiga el jugador, vuelva a conseguir el mismo logro. Lo que queremos es que le aparezcan cada uno de los 4 logros una única vez. Para ello, voy a eliminar de manera dinámica el primer logro.




logrosHeadshot = ['100Headshot', '1000Headshot', '5000Headshot', '25000Headshot']

contadorHeadshot = 100

if contadorHeadshot == 100:
    
    print("Logro desbloqueado - 100 Headshots")
    
    del logrosHeadshot [0]

    print(logrosHeadshot)

No te asustes con este código, aún no hemos visto el condicional if que aparece, pero es buen momento para que entres un poco en contacto con él. El condicional if ejecuta el código de su interior si su condición se cumple.

Analicemos el código detenidamente:

Tenemos una lista llamada logrosHeadshot con 4 logros dentro.
La variable contadorHeadshot irá guardando durante la partida los headshots hasta que su valor sea 100.
Cuando contadorHeadshot valga 100 se va a ejecutar el código del if ¿Por qué? porque la variable contadorHeadshot es igual (==) a 100.



Una vez se ejecuta el if, aparece un mensaje en la pantalla (Logro desbloqueado - 100 Headshots).

Después del mensaje en pantalla, se ejecuta la parte del código del logrosHeadshot [0]. Con este [0] estoy llamando a la primera posición (0) de la lista (100Headshot) y con del hago que la elimine.

Finalmente, para comprobar si se ha eliminado el logro correctamente, hago un print() que efectivamente, me muestra la lista ahora con una posición menos.

Ahora si, el resultado:

Resultado


Del listas Python

Pueden ser conceptos difíciles para estar empezando y puede que no lo entiendas del todo. Lo importante, es que entiendas el funcionamiento de del, que básicamente sirve para eliminar partes de una lista. 



En esta lista se ha eliminado el elemento número [0] (100Headshot) y es en esa posición, dónde queda ahora (1000Headshot).

Comprobémoslo.


del logrosHeadshot [0]

print(logrosHeadshot [0])

Elimino con del logrosHeadshot [0] a 100Headshot y luego imprimo la posición donde estaba. En ella se ha posicionado 1000Headshot.

Resultado
Logros videojuegos Python

Es importante que tengas en cuenta que los elementos cambian de posición, porque cuando tengas códigos extensos, puedes hacer muchos errores, por ejemplo, si más adelante tu juego o programa tuviese código que trabajase directamente con el elemento eliminado, esto daría lugar a errores.



Es mucha información de golpe, pero si superas esta barrera, estarás un poco más cerca de ser un/a profesional de Python, así que si te quedan dudas, no dudes (valga la redundancia) en preguntarme en los comentarios.