Serie Fibonnaci y avances en el curso [ESP-ENG] | Python

in Develop Spanish9 months ago (edited)

¿Qué tal? De nuevo vuelvo luego de un buen rato inactivo por acá, como siempre me gusta guardar las publicaciones sobre programación, reparaciones o proyectos que me toman más tiempo para esta cuenta que considero un poco más especial. En @gabrielrr17 he estado activo con retos y cositas de Splinterlands como batallas y aperturas de cofres de temporada.

Para esta ocasión he venido para compartir un poco sobre mi progreso en la materia "Lenguajes de programación" en la universidad y sobre el curso de Python que mencioné antes. Este curso lo empecé hace ya un mes más o menos, pero voy a pasos cortos por causa de todas mis responsabilidades.

Para mi fortuna, esta materia, "Lenguajes de programación", el profesor ha decidido comenzarla con Python, pues considera que es un lenguaje con bastante uso en la actualidad, aunque menciono que abarcaríamos otros.

Anteriormente ya hice una publicación sobre un programa de la serie Fibonacci, sin embargo, en esa ocasión estaba escrito en lenguaje C++. Este ejercicio es un clásico de clásicos, a tal punto que el profesor cuenta que cuando él estudiaba, con lenguaje Pascal, le tocó hacer un ejercicio enfocado en esta misma serie.

Si bien ChatGPT puede dar una respuesta en segundos de cómo hacer este ejercicio, lo cierto es que entorpece el proceso de aprendizaje el usar trucos como ese. Considero que la IA puede ser de gran ayuda pero abusar trae consecuencias.

What's up? I'm back again after a while of inactivity here, as always I like to save posts about programming, repairs or projects that take me more time for this account that I consider a little more special. In @gabrielrr7 I have been active with challenges and Splinterlands stuff like battles and season chests openings.

For this occasion I've come to share a bit about my progress in the subject "Programming Languages" at university and about the Python course I mentioned before. I started this course already a month or so ago, but I'm taking short steps because of all my responsibilities.

Fortunately for me, this subject, "Programming Languages", the professor has decided to start it with Python, as he considers that it is a language with quite a lot of use nowadays, although I mention that we would cover others.

Previously I already made a publication about a Fibonacci series program, however, on that occasion it was written in C++ language. This exercise is a classic of classics, to such an extent that the professor tells that when he was studying, with Pascal language, he had to do an exercise focused on this same series.

While ChatGPT can give an answer in seconds on how to do this exercise, the truth is that it hinders the learning process to use tricks like that. I believe that AI can be a great help, but overuse has consequences.


Portada post programacion, tech.jpg
Editado con Canva, la imagen de fondo fue creada por Gabby la IA generadora de imágenes / Edited with Canva, the background image was created by Gabby the AI image generator.

Programación c++.png

En Python resultó ser más corto que en C++, incluso habiendo incluido el apartado del bucle que permite repetir el proceso para continuar la sucesión con 10 repeticiones más. Esto porque Python tiene varias particularidades que ayudan a reducir bastante el código necesario. Acá me tomó unas 27 líneas de código (sin usar funciones).

Para empezar declaré la variable "val" que funciona como validador para el bucle while que empieza en la línea 211. Como dato importante, empieza en la línea 211 porque en este mismo archivo .py hago el resto de mis prácticas del curso y la universidad, por lo que tiene acumulado varios programas pequeños que me gusta tener en el mismo sitio por ahora.

Las siguientes dos variables son n1 y n2, ambas iniciadas con valor 1 pues así inicia la seria. Posteriormente las muestro en pantalla y luego con un bucle for que tiene un rango de 10 repeticiones n1 toma la suma de n1+n2 y luego n2 hace lo mismo pero con el nuevo valor de n1, de tal manera que se cumple el principio de la sucesión. Finalmente se muestran en pantalla ambo números separados por un guión.

Sigue el bucle While que tiene como parámetro que "val" sea diferente de "N" o "n" para que se siga ejecutando, esto porque el usuario ingresa Y o N para continuar o no con la ejecución de otras 10 repeticiones. Si el usuario no ingresa (Y/N) sino otro carácter por error, entonces el bucle se repite con la pregunta ("¿Desea continuar? (Y/N)), (Y=Yes), (N=No). Eso es en resumen el funcionamiento del código.

In Python it turned out to be shorter than in C++, even having included the loop section that allows repeating the process to continue the succession with 10 more repetitions. This is because Python has several peculiarities that help to reduce quite a lot the necessary code. Here it took me about 27 lines of code (without using functions).

To start I declared the variable "val" that works as a validator for the while loop that starts at line 211. As an important fact, it starts at line 211 because in this same .py file I do the rest of my course and university practices, so it has accumulated several small programs that I like to have in the same place for now.

The following two variables are n1 and n2, both initialized with value 1 because this is how the series starts. Later I show them on screen and then with a for loop that has a range of 10 repetitions n1 takes the sum of n1+n2 and then n2 does the same but with the new value of n1, in such a way that the principle of the succession is fulfilled. Finally, both numbers are displayed on the screen separated by a hyphen.

It follows the While loop that has as parameter that "val" is different from "N" or "n" to continue executing, this because the user enters Y or N to continue or not with the execution of another 10 repetitions. If the user does not enter (Y/N) but another character by mistake, then the loop repeats with the question ("Do you want to continue? (Y/N)), (Y=Yes), (N=No). That is in summary how the code works.

Programación c++.png

image.png

Programación c++.png

Respecto al curso, llevo un 48%, actualmente voy por la lección de módulos, aunque en clase aun no hemos empezado con funciones, así que llevo algo de ventaja en ese sentido. Los exámenes han estado retadores, a mi parecer bastante al nivel de todo lo que se entrega. Hubo un detalle que vi mejorable y lo comente por la encuesta sobre el curso, este detalle lo comenté en la publicación anterior sobre este tema.

I am 48% of the way through the course, I am currently going through the module lesson, although in class we have not yet started with functions, so I am a bit ahead in that sense. The exams have been challenging, in my opinion quite at the level of everything that is delivered. There was one detail that I saw that could be improved and I commented it in the survey about the course, this detail I commented it in the previous publication on this topic.

Programación c++.png

image.png

Programación c++.png

image.png

image.png

Programación c++.png

¡Y bueno... Eso es todo por hoy! Pronto estaré comentando más sobre mis avances. En lo personal te recomiendo mucho entrar también en este curso, doy fe de que es de muy buen calidad y vale cada centavo. Si quieres ingresar, clica aquí.

And well... That's all for today! Soon I will be commenting more about my progress. Personally I highly recommend you to join this course as well, I can attest that it is of very good quality and worth every penny If you want to join, click here.

Programación c++.png


Redes actualizada.gif


Puedes seguirme por acá si lo deseas:
You can follow me here if you want:

Cuenta secundaria
(Dibujos, edición y juegos) | Secondary account (Drawings, editing and games)

Sort:  

Hola @gabrielr29 interesante presentación, en el mundo de la programación. Es una información valiosa y de interés para los que transitan esas áreas. La presentas de manera muy organizada y con su componente instructivo. Bien hecho.
Feliz semana
!LUV

Muchas gracias por su apreciación, le deseo una excelente semana también!

HispaPro es un proyecto construido en Hive para apoyar con el marketing, la incorporación, asesorías, curaduría, acompañamiento y más, en la construcción de nuestro ecosistema.

Sigue, contacta y se parte del proyecto en:


¡Gracias!

¡Gracias por el apoyo!

Heheh...you took a rest from blogging but never from your skill.
That was a beautiful presentation bro...

Hahahaha, thank you very much for such nice words.

You're welcome