June 2018 Update
This commit is contained in:
parent
ba8067c3b7
commit
22f33d4004
5278 changed files with 84726 additions and 14379 deletions
75
Task/Combinations/Ring/combinations.ring
Normal file
75
Task/Combinations/Ring/combinations.ring
Normal file
|
|
@ -0,0 +1,75 @@
|
|||
# Project : Combinations
|
||||
# Date : 2017/10/29
|
||||
# Author : Gal Zsolt (~ CalmoSoft ~)
|
||||
# Email : <calmosoft@gmail.com>
|
||||
|
||||
n = 5
|
||||
k = 3
|
||||
temp = []
|
||||
comb = []
|
||||
num = com(n, k)
|
||||
while true
|
||||
temp = []
|
||||
for n = 1 to 3
|
||||
tm = random(4) + 1
|
||||
add(temp, tm)
|
||||
next
|
||||
bool1 = (temp[1] = temp[2]) and (temp[1] = temp[3]) and (temp[2] = temp[3])
|
||||
bool2 = (temp[1] < temp[2]) and (temp[2] < temp[3])
|
||||
if not bool1 and bool2
|
||||
add(comb, temp)
|
||||
ok
|
||||
for p = 1 to len(comb) - 1
|
||||
for q = p + 1 to len(comb)
|
||||
if (comb[p][1] = comb[q][1]) and (comb[p][2] = comb[q][2]) and (comb[p][3] = comb[q][3])
|
||||
del(comb, p)
|
||||
ok
|
||||
next
|
||||
next
|
||||
if len(comb) = num
|
||||
exit
|
||||
ok
|
||||
end
|
||||
comb = sortfirst(comb, 1)
|
||||
see showarray(comb) + nl
|
||||
|
||||
func com(n, k)
|
||||
res1 = 1
|
||||
for n1 = n - k + 1 to n
|
||||
res1 = res1 * n1
|
||||
next
|
||||
res2 = 1
|
||||
for n2 = 1 to k
|
||||
res2 = res2 * n2
|
||||
next
|
||||
res3 = res1/res2
|
||||
return res3
|
||||
|
||||
func showarray(vect)
|
||||
svect = ""
|
||||
for nrs = 1 to len(vect)
|
||||
svect = "[" + vect[nrs][1] + " " + vect[nrs][2] + " " + vect[nrs][3] + "]" + nl
|
||||
see svect
|
||||
next
|
||||
|
||||
Func sortfirst(alist, ind)
|
||||
aList = sort(aList,ind)
|
||||
for n = 1 to len(alist)-1
|
||||
for m= n + 1 to len(aList)
|
||||
if alist[n][1] = alist[m][1] and alist[m][2] < alist[n][2]
|
||||
temp = alist[n]
|
||||
alist[n] = alist[m]
|
||||
alist[m] = temp
|
||||
ok
|
||||
next
|
||||
next
|
||||
for n = 1 to len(alist)-1
|
||||
for m= n + 1 to len(aList)
|
||||
if alist[n][1] = alist[m][1] and alist[n][2] = alist[m][2] and alist[m][3] < alist[n][3]
|
||||
temp = alist[n]
|
||||
alist[n] = alist[m]
|
||||
alist[m] = temp
|
||||
ok
|
||||
next
|
||||
next
|
||||
return aList
|
||||
Loading…
Add table
Add a link
Reference in a new issue