fork download
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. void spaces(char space) {
  5. if (space <= 0) {
  6. return;
  7. }
  8. std::cout << " ";
  9. spaces(space-1);
  10. }
  11.  
  12. void line(char start, char end, char space) {
  13. if (start != end) {
  14. std::cout << start;
  15. line(start+1, end, space-1);
  16. std::cout << start;
  17. } else {
  18. std::cout << end;
  19. }
  20. }
  21.  
  22. void countdown(char start, char end, char space) {
  23. ++space;
  24. if (start != end) {
  25. countdown(start, end-1, space);
  26. }
  27. spaces(space);
  28. line(start, end, space);
  29. spaces(space);
  30. std::cout << std::endl;
  31. }
  32.  
  33. void range(char start, char end) {
  34. countdown(start, end, 0);
  35. }
  36.  
  37. int main() {
  38. range('a', 'g');
  39. return 0;
  40. }
Success #stdin #stdout 0s 3296KB
stdin
Standard input is empty
stdout
       a       
      aba      
     abcba     
    abcdcba    
   abcdedcba   
  abcdefedcba  
 abcdefgfedcba