Eu não vou te ajudar resolver, até porquen ão disse qual é a dificuldade que está tendo, mas pode dizer que este código quebra se digitar uma letra poe exemplo e fere a premissa básica, e ele poderia ter sio feito até mesmo com 5 linhas úteis (6 com o }
). Poderia ter apenas 2 loops, e até mesmo 1 se fizesse uma pré memoização dos resultados de 1 a 100, que seria mais rápido de executar, mas gastaria um pouco mas de memória. Pesquise mais. Melhorar o código pode ficar com um exercício extra.
Cuidado com o ciclo: aprende errado, treina-o, recebe validação, ensina errado, briga pelo erro.
Ajudei? Era o meu desejo.
Farei algo que muitos pedem para aprender a programar corretamente, gratuitamente. Para saber quando, me segue nas suas plataformas preferidas. Quase não as uso, não terá infindas notificações (links aqui).