1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

PM me your answers

Discussion in 'C' started by r4whore, Feb 25, 2009.

  1. r4whore

    r4whore New Member

    Joined:
    Feb 25, 2009
    Messages:
    1
    Likes Received:
    0
    Trophy Points:
    0
    In the program below you will see that 6 random numbers in the range 1..49 are
    stored in the selected array before it is printed. No checking is done to see if the
    same number occurs more than once.
    Add the required checking and sort the numbers before you print them.
    Could you think of a better strategy for generating the 6 different numbers?
    Code:
    #include <stdio.h>
    #include <stdlib.h>
    #include <time.h>
    #define TOTAL_NUMBER 6
    void seed_generator(void);
    int get_rand_in_range(int from, int to);
    int main(void)
    {
    int i;
    int selected[TOTAL_NUMBER];
    seed_generator();
    for(i = 0; i < TOTAL_NUMBER; i++)
    selected[i] = get_rand_in_range(1, 49);
    for(i = 0; i < TOTAL_NUMBER; i++)
    printf("%i\t", selected[i]);
    printf("\n");
    return 0;
    }
    int get_rand_in_range(int from, int to)
    {
    int min = (from > to) ? to : from;
    return rand() % abs(to - from + 1) + min;
    }
    void seed_generator(void)
    {
    time_t now;
    now = time(NULL);
    srand((unsigned)now);
    }
     
    Last edited by a moderator: Feb 25, 2009
  2. shabbir

    shabbir Administrator Staff Member

    Joined:
    Jul 12, 2004
    Messages:
    15,283
    Likes Received:
    364
    Trophy Points:
    83
    I would not attempt that.
     
  3. xpi0t0s

    xpi0t0s Mentor

    Joined:
    Aug 6, 2004
    Messages:
    3,012
    Likes Received:
    203
    Trophy Points:
    0
    Occupation:
    Senior Support Engineer
    Location:
    England
    > Add the required checking and sort the numbers before you print them.

    Um, why? This looks like a homework assignment that YOU have been given to do.
    So you should do it, or at least fess up that you want some help.

    > Could you think of a better strategy for generating the 6 different numbers?

    Yep, but that's not the question is it? The question is whether or not YOU can think of a better strategy.
    Can you? For example suppose I want 6 unique numbers and I think of 20, 17, 9, 41, 17...stop right there. How would I know that 17 is a duplicate?
     
  4. cpulocksmith

    cpulocksmith New Member

    Joined:
    Jul 23, 2008
    Messages:
    289
    Likes Received:
    5
    Trophy Points:
    0
    Occupation:
    student
    Location:
    canada
    hey r4whore, please around here do not minding helping people. but they dont like to be scammed into helping people, if you were to come on here and say. "i got this homework assignment and i cant figure something out do you think you guys could help me out a little?" i am sure that some one here would help you. they may not give you the answer because they believe that the best way to learn it to figure something out for yourself. but at lest you would get some help.
     

Share This Page