fork download
  1. #include <iostream>
  2. #include <vector>
  3. using namespace std;
  4.  
  5. // Funkcja rekurencyjna zaznaczająca odcinki Cantora
  6. void cantor(vector<string>& canvas, int level, int left, int right, int row) {
  7. if (level == 0) {
  8. for (int i = left; i <= right; i++) {
  9. canvas[row][i] = '#';
  10. }
  11. return;
  12. }
  13.  
  14. int third = (right - left + 1) / 3;
  15.  
  16. // Lewa część
  17. cantor(canvas, level - 1, left, left + third - 1, row);
  18.  
  19. // Prawa część
  20. cantor(canvas, level - 1, right - third + 1, right, row);
  21. }
  22.  
  23. int main() {
  24. const int maxLevel = 6;
  25.  
  26. // szerokość = 3^6 = 729
  27. int width = 1;
  28. for (int i = 0; i < maxLevel; i++) {
  29. width *= 3;
  30. }
  31.  
  32. vector<string> canvas(maxLevel + 1, string(width, ' '));
  33.  
  34. // Generowanie wszystkich poziomów od 0 do 6
  35. for (int level = 0; level <= maxLevel; level++) {
  36. cantor(canvas, level, 0, width - 1, level);
  37. }
  38.  
  39. // Wyświetlanie
  40. for (int i = 0; i <= maxLevel; i++) {
  41. cout << "Stopien " << i << ":" << endl;
  42. cout << canvas[i] << endl << endl;
  43. }
  44.  
  45. return 0;
  46. }
Success #stdin #stdout 0s 5320KB
stdin
Standard input is empty
stdout
Stopien 0:
#########################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################

Stopien 1:
###################################################################################################################################################################################################################################################                                                                                                                                                                                                                                                   ###################################################################################################################################################################################################################################################

Stopien 2:
#################################################################################                                                                                 #################################################################################                                                                                                                                                                                                                                                   #################################################################################                                                                                 #################################################################################

Stopien 3:
###########################                           ###########################                                                                                 ###########################                           ###########################                                                                                                                                                                                                                                                   ###########################                           ###########################                                                                                 ###########################                           ###########################

Stopien 4:
#########         #########                           #########         #########                                                                                 #########         #########                           #########         #########                                                                                                                                                                                                                                                   #########         #########                           #########         #########                                                                                 #########         #########                           #########         #########

Stopien 5:
###   ###         ###   ###                           ###   ###         ###   ###                                                                                 ###   ###         ###   ###                           ###   ###         ###   ###                                                                                                                                                                                                                                                   ###   ###         ###   ###                           ###   ###         ###   ###                                                                                 ###   ###         ###   ###                           ###   ###         ###   ###

Stopien 6:
# #   # #         # #   # #                           # #   # #         # #   # #                                                                                 # #   # #         # #   # #                           # #   # #         # #   # #                                                                                                                                                                                                                                                   # #   # #         # #   # #                           # #   # #         # #   # #                                                                                 # #   # #         # #   # #                           # #   # #         # #   # #