Ir al contenido principal

#5 Bucles en Go (Tres en uno)

 

__ Indice __


¿Qué es un bucle?

Ejercicio básico sin bucles

Bucle for

Bucle "while"

Bucle ""do while""

Segundo ejercicio

Reto

 

__ ¿Qué es un bucle? __

 

 

 

Un bucle o ciclo, en programación, es una sentencia que ejecuta repetidas veces un trozo de código, hasta que la condición asignada a dicho bucle deja de cumplirse. Los tres bucles más utilizados en programación son el for, while, do while

Así que podemos decir, que un bucle sirve para repetir un proceso múltiples veces sin necesidad de volverlo a escribir.

La diferencia es que en Go, no existen como tal while y do while. for hacer el trabajo de todos !!


__ Ejercicio __

 

Bien, primero vamos a hacer un ejercicio bastante simple sin bucles, luego ya los vamos a utilizar para demostrar su utilidad :grinning:Vamos a imprimir un mensaje en pantalla, yo he puesto mi nombre, pero con un fmt.Println("Hola") es más que suficiente ^-^






Ahora vayamos a la parte hipotética, supongamos que en tu trabajo te piden repetir este mensaje 20 veces, NO, 100 veces !!!! Puedes intentarlo hacerlo línea por línea pero te quedará un código muy feo


Para este tipo de tareas que tenemos que hacer repeticiones, existen los bucles :grinning:

__ Bucle for __

La estructura del - for - es bastante intuitiva, tiene un valor inicial, un limite y en cuanto irá avanzando.


Quizás lo que puede confundir es el incremento, pero es solamente decir que si va ir avanzando de 1 en 1, 2 en 2, -1 en -1, etc etc

Si nuestro inicio es 0, y queremos que termine cuando sea 10, podemos decir que vaya en 1 en 1, con esto nuestro ciclo se repetirá 11 veces (El cero cueta), ya que irá avanzando de esta forma - 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 - Este incremento esta representado por ++


 

Como pueden ver, nuestra variable i incia en 0, terminará cuando sea igual 10, y va creciendo en 1.

Lo qué nos dará en la consola este resultado, haciendo que en una sola estructura tengamos lo que al principio eran copiar y pegar varias veces la misma línea de código


Y esto es lo que hace un bucle, bastante sencillo ¿no?


__ Bucle while __

Habíamos dicho que go remplaza while y do while por el for, pero ¿Cómo es esto?

La estructura de un while es la siguiente:

while (CONDICIÓN) {
      Código a repetir
}

Podemos remplazar esta misma estructura


 
Si vamos a la consola podemos ver que no ha cambiado nada :grinning:

__ Bucle do while __

El do while es un poquito más difícil de hacerlo en Golang, ya que no esta de forma nativa y tenemos que emularlo, A diferencia del while, donde primero evalua la condición y luego ejecuta hasta que esta sea falsa. Do while primero ejecuta una vez, y luego evalúa la condición y ahí comienza a repetir si se cumple



Así quedaría el bucle do while en Go, si me lo preguntan a mí, se ve feo xD

__ Segundo ejercicio __

Vamos con un ejercicio un poquito más avanzado con ciclos :grinning:
Haremos este triángulo con asteriscos

 

Si pensamos en como esta,primero  se ejecuta una vez la sentencia de imprimir en pantalla, luego dos, tres, 4...etc etc así hasta llegar al límite que nosotros le hayas puesto

 

Quizás hice un poco de trampa, porque hay dos cosas que no les he explicado :joy:
1- Se pueden imprimir sin dar salto de línea con la instrucción fmt.Print

2- Se pueden meter bucles dentro de bucles, ha eso se le llama - bucle anidado -

Pero ¿cómo funciona el código que he puesto? Lo podemos ver en la siguiente tabla. Se explica el valor que tiene i en cada incremento y cuantas veces se tiene que repetir j hasta que sea iguala a i, a su vez imprimiendo la misma cantidad de asteriscos.

 

Si vamos a la consola y ejecutamos nuestro programa, tendremos lo siguiente :grinning: 

 

Listo ha quedado, muy bonito ^-^

__ Reto __

El reto de ustedes, es crear la misma figura pero al revés, es casi igual a lo que hemos hecho



:stuck_out_tongue_winking_eye:


 

Comentarios

Entradas más populares de este blog

3# Criptografía - Cifrado por sustitución Atbash

__ Indice __ ¿Qué es Atbash? Proceso de cifrado Proceso de descifrar  Código Github ¿Qué es Atbash? Atbash es un método de cifrado para el alfabeto hebreo, por lo tanto entra en la clasificación de           - Cifrado Clásico - se le conoce también como el método espejo, pues consiste en sustituir en la que la primera letra (A) será sustituida por la última (Z), la segunda por la penúltima (B - Y) y así sucesivamente. Proceso de cifrado Vayamos a probarlo, vamos a cifrar nuestra palabra de costumbre RegularWeb: R  =   I E  =  V G  =  T U  =  F L  =  O                  Resultado : IVTFOZIDVY A  =  Z R  =  I W =  D E  =  V B  =  Y Proceso de descifrar  Para descifrar es el mismo procedimiento. R  =   I E  =  V G  =  T U  =  F L  =  O                  Resultado : REGULARWEB A  =  Z R  =  I W =  D E  =  V B  =  Y Código Github   https://github.com/NeoTRAN001/Crypt

2# Criptografía - Polybios

__ Indice __ ¿Qué es Polybios? Proceso de cifrado Proceso de descifrar Código Github __ ¿Qué es Polybios? __ Es un sistema de cifrado en el que se coloca todo el alfabeto en una matriz, y cada letra tiene una posición en la que será convertida.  Es considerado el algoritmo de cifrado más antiguo que se tiene registro •Su nombre se le da por el Historiador griego Polybios • Alrededor del año 150 a. C. __ Proceso de cifrado __ Bien, el proceso de cifrado es bastante fácil, tenemos nuestra matriz bidimensional , si queremos traducir el carácter - ? - nos da como resultado [ 0, 0 ] Y pues, eso es todo... Vayamos a cifrar la palabra Hola H = [4, 9]    o = [1 , 9]    l  = [1, 5]     a = [0, 4]  Resultado: 49191504 __ Proceso de descifrar __  Ahora si queremos el proceso inverso, solamente tenemos, tenemos que mandarle las posiciones y este nos devolverá el carácter [4, 9] = H     [1 , 9] = o    [1, 5] = l    [0

Sockets en C#

__ Índice __ ¿Qué son los sockets en programación? Ejemplo en C# Github __ ¿Qué son los socket en programación? __ Un socket es un método de comunicación entre un programa cliente y un servidor. Entonces podemos decir que los sockets, son el "tunel" de comunicación entre dos aplicaciones. __ Ejemplo en C# __ Servidor  Creamos un nuevo proyecto en consola que será el código del servidor Importamos las librerías necesarias para los sockets Declaramos dos variables, una será la dirección del Server , ya que estamos haciendo todo en nuestra pc la dirección debe de ser la local, localhost o 127.0.0.1 La otra variable será el puerto de conexión, es recomendable seleccionar un puerto alto. Es por eso que las aplicaciones utilizan 8080 . Ahora tenemos que crear un objeto de tipo Socket, que nos pide tres parámetro: 1- Esquema del tipo de diccionario: AddressFamily.InterNetwork dice que utilizará una dirección IP