recursively draw the lines

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • Matt

    recursively draw the lines

    I am writing a recursive program to draw the lines recursively, given the
    range[min,max] and number of intervals (n) between the range.

    The problem is I don't know how to draw the line in point 0.375, as you see below.
    Please advise! Thanks!


    #include <iostream>
    using namespace std;

    void draw(double min, double max, int n);

    int main()
    { draw(0,1,8);
    }

    void draw(double min, double max, int n)
    { if (n != 1)
    { double mid = (max - min)/2;
    cout << mid << endl;
    draw(min, mid, n/2);
    }
    }


    The program output:
    0.5
    0.25
    0.125

    Here's the expected output:
    0.5
    0.25
    0.125
    0.375
    0.75
    0.625
    0.875
  • .oO LGV Oo.

    #2
    Re: recursively draw the lines


    "Matt" <jrefactors@hot mail.com> a écrit dans le message de
    news:ba8a039e.0 310050943.52034 ee@posting.goog le.com...[color=blue]
    > I am writing a recursive program to draw the lines recursively, given the
    > range[min,max] and number of intervals (n) between the range.
    >
    > The problem is I don't know how to draw the line in point 0.375, as you[/color]
    see below.[color=blue]
    > Please advise! Thanks!
    >
    >
    > #include <iostream>
    > using namespace std;
    >
    > void draw(double min, double max, int n);
    >
    > int main()
    > { draw(0,1,8);
    > }
    >
    > void draw(double min, double max, int n)
    > { if (n != 1)
    > { double mid = (max - min)/2;
    > cout << mid << endl;
    > draw(min, mid, n/2);
    > }
    > }
    >
    >
    > The program output:
    > 0.5
    > 0.25
    > 0.125
    >
    > Here's the expected output:
    > 0.5
    > 0.25
    > 0.125
    > 0.375
    > 0.75
    > 0.625
    > 0.875[/color]

    shouldn't you call draw(mid, max too, n/2) ?


    Comment

    • Pete Becker

      #3
      Re: recursively draw the lines

      ".oO LGV Oo." wrote:[color=blue]
      >
      >
      > shouldn't you call draw(mid, max too, n/2) ?[/color]

      draw(mid, max, n - n/2);

      n could be odd.

      --

      Pete Becker
      Dinkumware, Ltd. (http://www.dinkumware.com)

      Comment

      Working...