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

Username:   Password: 
 RegisterRegister   
 Tournament Help
Index -> Programming, Turing -> Turing Help
View previous topic Printable versionDownload TopicSubscribe to this topicPrivate MessagesRefresh page View next topic
Author Message
l0tt0




PostPosted: Thu Dec 04, 2003 10:56 pm   Post subject: Tournament Help

Hey Everyone, I made this tournament code for my site to find out who's where in the tournament. I haven't learned how to do tony's proc to check to make sure two numbers are the same so i just used the big exit when line. What i want to know is if there's anyway to amke it run faster besides a better system of making sure no matches are the same?

Thanks.

code:


 var l: array 1..8 of int       % First Set Of Numbers
 var r: array 1..8 of int       % Second Set Of Numbers
 var n: array 1..16 of string   % Name Of People Competing In Tournament

 
for x: 1..16                    % Getting The Names of People In The Tournament
    put "Please enter a name in the tournament(",x,")"
    get n(x)
end for
 
 
loop   
    cls
    for z: 1..8
        l(z):=Rand.Int(1,8)    % First Set Of Random Numbers
        r(z):=Rand.Int(1,8)    % Second Set Of Random Numbers
    end for
   
exit when l(1) not=l(2) and l(1) not=l(3) and l(1) not=l(4) and l(1) not=l(5) and l(1) not=l(6) and l(1) not=l(7) and l(1) not=l(8)
     and  l(2) not=l(3) and l(2) not=l(4) and l(2) not=l(5) and l(2) not=l(6) and l(2) not=l(7) and l(2) not=l(8)
     and  l(3) not=l(4) and l(3) not=l(5) and l(3) not=l(6) and l(3) not=l(7) and l(3) not=l(8)
     and  l(4) not=l(5) and l(4) not=l(6) and l(4) not=l(7) and l(4) not=l(8)
     and  l(5) not=l(6) and l(5) not=l(7) and l(5) not=l(8)
     and  l(6) not=l(7) and l(6) not=l(8)
     and  l(7) not=l(8)     
     and  r(1) not=r(2) and r(1) not=r(3) and r(1) not=r(4) and r(1) not=r(5) and r(1) not=r(6) and r(1) not=r(7) and r(1) not=r(8)
     and  r(2) not=r(3) and r(2) not=r(4) and r(2) not=r(5) and r(2) not=r(6) and r(2) not=r(7) and r(2) not=r(8)
     and  r(3) not=r(4) and r(3) not=r(5) and r(3) not=r(6) and r(3) not=r(7) and r(3) not=r(8)
     and  r(4) not=r(5) and r(4) not=r(6) and r(4) not=r(7) and r(4) not=r(8)
     and  r(5) not=r(6) and r(5) not=r(7) and r(5) not=r(8)
     and  r(6) not=r(7) and r(6) not=r(8)
     and  r(7) not=r(8)     
end loop

for a: 1..8
    put n(a),"-",l(a)         % Displays First 1-8 Names With Number
end for

for b: 1..8
    put n(b+8),"-",r(b)       % Displays Second Set of Names With Number
end for

Sponsor
Sponsor
Sponsor
sponsor
Tony




PostPosted: Thu Dec 04, 2003 11:53 pm   Post subject: (No subject)

Shocked

wow man... could you do yourself a favor and take Data Managment in grade 12?

When generating 8 random numbers (from 1 to 8), what are the chances of them to generate an unique list?

well chances of first to not repeat are 1/1
second - 7/8
third - 6/8
...
eighth - 1/8...

multiply all those numbers together... you get 0.0025

they translate into 1:400 odds of you generating a unique list Rolling Eyes
Latest from compsci.ca/blog: Tony's programming blog. DWITE - a programming contest.
l0tt0




PostPosted: Sun Dec 07, 2003 11:59 pm   Post subject: (No subject)

huh?

im only in grade 10...but i think i understand what u said...almost

taht there's practically no chance of gettin those numbers...?
DanShadow




PostPosted: Mon Dec 08, 2003 12:06 am   Post subject: ..

ok....is this code s upposed to go through long random pointless (algorithyms) to find 1 person from each list to go against each other in a tournament? If so, its so much easier that that.
code:

var tournlist_1,tournlist_2:array 1..20 of int
var tourn_num1,tourn_num2:int:=1
randint(tourn_num1,1,20)
randint(tourn_num2,1,20)
put tournlist_1(tourn_num1)
put "faces off against"
put tournlist_2(tourn_num2)

Just ask for the names of the tournament people under the variables.
Hopefully I understood what your program was doing. (Maybe make a couple comments?)
AsianSensation




PostPosted: Mon Dec 08, 2003 12:09 am   Post subject: (No subject)

but with your code, a person could go against him or herself.

Also, in a tournament, I think you only play each person once. Or something like that, so a bit of math is involved. just use the stuff you learned in data management.
Tony




PostPosted: Mon Dec 08, 2003 10:09 am   Post subject: (No subject)

the guy is not in data managment, he's in grade 10 Rolling Eyes

anyways, here's the link to the source code for that random list generator. Try to understand how it works.
Latest from compsci.ca/blog: Tony's programming blog. DWITE - a programming contest.
DanShadow




PostPosted: Mon Dec 08, 2003 12:05 pm   Post subject: ..

Ok, just make a new array...like for people who already played. Like.....
code:

var tournie_used_people:array 1..40 of int
%Do the script that makes a random name, and check if its not fighting itself...
%Then check this array to see if names have been picked, if they have, redo randint
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  [ 7 Posts ]
Jump to:   


Style:  
Search: