Advertisement
Looong

Pyramid Recursive

Sep 6th, 2015
495
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.72 KB | None | 0 0
  1. #include <stdio.h>
  2.  
  3. void printDash(int count)
  4. {
  5.   if (count <= 0)
  6.     return;
  7.  
  8.   printf("_");
  9.  
  10.   printDash(count - 1);
  11. }
  12.  
  13. void printRange(int start, int end)
  14. {
  15.   if (start > end) {
  16.     printf("\n");
  17.  
  18.     return;
  19.   }
  20.  
  21.   printf("%i", start);
  22.  
  23.   printRange(start + 1, end);
  24. }
  25.  
  26. void draw(int count, int start, int end)
  27. {
  28.   if (count <= 1) {
  29.     printDash(start - 1);
  30.     printRange(start, end);
  31.  
  32.     return;
  33.   }
  34.  
  35.   printDash(start - 1);
  36.   printRange(start, end);
  37.  
  38.   draw(count - 1, start - 1, end);
  39.  
  40.   printDash(start - 1);
  41.   printRange(start, end);
  42. };
  43.  
  44. void recursiveTriangle(int N)
  45. {
  46.   draw(N - N/2, N, N);
  47. }
  48.  
  49. int main()
  50. {
  51.   recursiveTriangle(9);
  52.  
  53.   recursiveTriangle(6);
  54.  
  55.   return 0;
  56. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement