Генерация бесконечной последовательности
Есть 2 положительных целых числа x и y мы должны сгенерировать шаблон который выглядит следующим образом,
2,3,3,2,3,3,3,2,3,3,3,2,3,3,2,3,3,3,2,3,3,3,2,3,3,3,2,3,3,2....
Если мы посмотрим на количество 3s между 2s мы можем увидеть тот же самый шаблон создается,
2 | 3 3 | 2 | 3 3 3 | 2 | 3 3 3 | 2 ......
Что я уже пробовал:
#include <iostream.h> #include <conio.h> void main() { clrscr(); int x = 5, y = 6; int u = x, l = 0, k = 0, j = x; while(k < 21) { cout<<x<<","; if(u == x && l > 0) { u = y; l = 0; } if(u == y && l == j) { if(j == x) { j = y; } else { j = x; } u = x; l = 0; } for(int i=0; i<u; i++) { cout<<y<<","; } l++; k++; cout<<endl; } getch(); }
Это работает, но я не думаю, что это оптимальный способ сделать это.
Gerry Schmitz
Я согласен: паршивые имена переменных; никаких комментариев и т. д.
Rick York
Это не похоже на "тот же самый шаблон" для меня. Где есть сходство в шаблоне, который вы разместили? Если бы это было 2,3,3,2,3,3,3,3,2, я могу видеть паттерн, но я не вижу его в последовательности, которую вы опубликовали.