Buenas, por favor mirar este hilo donde se explica cómo poner título a los temas en el foro:
https://aprenderaprogramar.com/foros/index.php?topic=1460.0 es importante que pongas un título como se indica. Este lo corregiré yo.
La cosa como bien dices se va complicando un poco, pero sólo un poco. Creo que lo más importante es que avances comprendiendo lo que vas haciendo, aunque vayas un poco más lento. A veces asimilar las cosas requiere un poco de tiempo. Y una vez vas asentando los conceptos la complejidad se va diluyendo como un azucarillo en el agua porque cada vez tienes más experiencia...
El ejercicio está bien resuelto, y me gusta cómo has planteado el código pues aunque podría haberse hecho un poco más compacto, la lógica está muy bien autodescrita por el propio código y los nombres de variables. Animo. Salu2