Programming C, C++, Java, PHP, Ruby, Turing, VB
Computer Science Canada 
Programming C, C++, Java, PHP, Ruby, Turing, VB  

Username:   Password: 
 RegisterRegister   
 how to generate 4 numbers without repetition
Index -> Programming, Turing -> Turing Help
View previous topic Printable versionDownload TopicSubscribe to this topicPrivate MessagesRefresh page View next topic
Author Message
Blue_angel00




PostPosted: Sat Jun 05, 2004 7:44 pm   Post subject: how to generate 4 numbers without repetition

hi i'm new to this site and i haven't been doing programming for a while so i really need help.
i need to write a program to generate all the possibilities of 4 numbers from 1 to 40 in order and without repetition.
the first number has to be smaller than the second number and so on.
for example: 1,2,3,4 then next line has to be 1,2,3,5 all the way to 37,38,39,40.

if anyone knows how to write this program i would be greatly appreciated. Razz
Sponsor
Sponsor
Sponsor
sponsor
Delos




PostPosted: Sat Jun 05, 2004 8:06 pm   Post subject: (No subject)

Store the generated numbers temporarily in an array.
Each time a new number is generated, check through that array to see if it is already there...if it isn't, then add the next number to it.
Otherwise, generate a new number.
Cervantes




PostPosted: Sat Jun 05, 2004 8:09 pm   Post subject: (No subject)

arrays? dude, this isn't that difficullt Laughing

code:

const max_num := 40
var counter := 0
for a : 1 .. max_num
    for b : 1 .. max_num
        if b > a then
            for c : 1 .. max_num
                if c > b then
                    for d : 1 .. max_num
                        if d > c then
                            counter += 1
                        end if
                    end for
                end if
            end for
        end if
    end for
end for
put counter


all logic 8)
Delos




PostPosted: Sat Jun 05, 2004 8:21 pm   Post subject: (No subject)

Cervantes wrote:
arrays? dude, this isn't that difficullt Laughing


I really should read the posts more carefully...hehehe.

C (40, 4) works.

code:

const maxNum : int := 40
const rowSize : int := 4
var count : int := 0

function factorial (num : real) : real
    var temp : real := num
    if index (realstr (temp, 0), ".") > 0 then
        result - 1
    end if
    if temp > 169 then
        result - 1
    end if
    var n : real := temp - 1
    if temp = 0 then
        result 1
    else
        temp := temp * factorial (n)
    end if
   
    result temp
end factorial

function comb (n : real, r : real) : real
    % n choose r.

    var temp : real

    temp := round (factorial (n) / (factorial (n - r) * (factorial (r))))

    result temp
end comb

put comb (maxNum, rowSize)



(I used the real type as opposed to ints as Turing's ints don't go all that high...)
Display posts from previous:   
   Index -> Programming, Turing -> Turing Help
View previous topic Tell A FriendPrintable versionDownload TopicSubscribe to this topicPrivate MessagesRefresh page View next topic

Page 1 of 1  [ 4 Posts ]
Jump to:   


Style:  
Search: