Это достаточно эффективно, если циклы нуждаются в для вложенности.
Как уже говорили другие, рекурсия позволила бы вам «изящнее» вкладывать разные уровни друг в друга, и уровень вложенности можно было бы динамически контролировать, а не жестко программировать в вашей программе - но если вы обнаружите, что ваш дизайн требует если вы вложите 100 петель, то ваш дизайн почти наверняка совершенно сумасшедший.
(Однако в конкретном примере, который вы даете, нет необходимости в каких-либо циклах (или рекурсии) вообще. Поскольку все циклы имеют постоянную длину, вы можете предварительно рассчитать результат и просто отобразить одну строку с константой. Я предполагаю, это гипертетический пример, а не реальный код, который вы хотите написать?)