i created Private textboxGrid(8, 8) As TextBox. but i can only go up
to 6 columns but no nore than 6. because if i do seven columns, the
textbox wouldn't dispalyed numbers and cliicking several button
again...limited to 2. and when i restarted again,,,,nothing displayed
and button is freezing. this one in below code is nothing dispalying
and clicking again...the button is freezing . any ideas u can give me
me a hints?
\\
\\
\\
For i As Integer = 0 To 8
blnOk = False
Do While blnOk = False
intGetal =cint(9 * rnd()+1)
If sixth_row.IndexOf(intGetal) < 0 And intGetal
<> CInt(left(i)) And intGetal <> CInt(right(i)) And
intGetal <> CInt(third_row(i)) And intGetal <>
CInt(fourth_row(i)) _
And CInt(fifth_row(i)) Then
sixth_row.Add(intGetal)
blnOk = True
Else
blnOk = False
End If
Loop
Next
For i As Integer = 0 To 8
blnOk = False
Do While blnOk = False
intGetal = cint(9 * rnd()+1)
If seventh_row.IndexOf(intGetal) < 0 And intGetal
<> CInt(left(i)) And intGetal <> CInt(right(i)) And
intGetal <> CInt(third_row(i)) And intGetal <>
CInt(fourth_row(i)) And intGetal <> CInt(fifth_row(i)) _
And intGetal <> CInt(sixth_row(i)) Then
seventh_row.Add(intGetal)
blnOk = True
Else
If i < 8 Then
blnOk = False
Else
If intGetal = CInt(right(i)) And CInt(left(i))
And CInt(third_row(i)) And CInt(fourth_row(i)) _
And CInt(fifth_row(i)) And CInt(sixth_row(i))
Then
blnOk = True
i = -1
seventh_row.Clear()
End If
End If
End If
Loop
Next
\\
\\
\\
regards,
Supra wrote:
thank u, peter :-)
Peter Proost wrote:
Yes you can after you copy paste
this fillRandom, there was a nice little endless loop in my previous
fill random:
for example if the left and right
numbers were like this:
4 3
7 9
2 7
3 6
5 8
8 2
6 5
9 4
1
then it would try to add 1 as the
last number to the right column but that isn't allowed so an endless
loop because all other numbers are already added to the two array's
This is the new code, hth greetz
Peter:
Private Sub fillRandom()
Dim left As New ArrayList
Dim right As New ArrayList
Dim blnOk As Boolean = False
Dim intGetal As Integer
For i As Integer = 0 To 8
blnOk = False
Do While blnOk = False
intGetal = CInt(Rnd() * 8) + 1
If left.IndexOf(intGetal) < 0 Then
left.Add(intGetal)
blnOk = True
Else
blnOk = False
End If
Loop
Next
For i As Integer = 0 To 8
blnOk = False
Do While blnOk = False
intGetal = CInt(Rnd() * 8) + 1
If right.IndexOf(intGetal) < 0 And intGetal <>
CInt(left(i)) Then
right.Add(intGetal)
blnOk = True
Else
If i < 8 Then
blnOk = False
Else
If intGetal = CInt(left(i)) Then
blnOk = True
i = -1
right.Clear()
End If
End If
End If
Loop
Next
For i As Integer = 0 To 8
textboxGrid(i, 0).Text = CStr(left(i))
textboxGrid(i, 1).Text = CStr(right(i))
Next
End Sub
--
Programming today is a race between software engineers striving to
build bigger and better idiot-proof programs, and the Universe trying
to produce bigger and better idiots. So far, the Universe is winning.
can i continue more clicking than stopping at 8 times?
Peter Proost wrote:
Hi try it with this code in
the
fillrandom sub, it should work:
Private Sub fillRandom()
Dim left As New ArrayList
Dim right As New ArrayList
Dim blnOk As Boolean = False
Dim intGetal As Integer
For i As Integer = 0 To 8
blnOk = False
Do While blnOk = False
intGetal = CInt(Rnd() * 8) + 1
If left.IndexOf(intGetal) < 0 Then
left.Add(intGetal)
blnOk = True
Else
blnOk = False
End If
Loop
Next
For i As Integer = 0 To 8
blnOk = False
Do While blnOk = False
intGetal = CInt(Rnd() * 8) + 1
If right.IndexOf(intGetal) < 0 And intGetal <>
CInt(left(i)) Then
right.Add(intGetal)
blnOk = True
Else
blnOk = False
End If
Loop
Next
For i As Integer = 0
To 8
textboxGrid(i, 0).Text = CStr(left(i))
textboxGrid(i, 1).Text = CStr(right(i))
Next
End Sub
hth Greetz Peter
--
Programming today is a race between software engineers striving to
build bigger and better idiot-proof programs, and the Universe trying
to produce bigger and better idiots. So far, the Universe is winning.
have nice day trip :-)
Peter Proost wrote:
Hi I'm going home now, but
I'll try to help you 2morrow (I'm not sure if I'll have access to a
..net computer tonight)
Greetz Peter
--
Programming today is a race between software engineers striving to
build bigger and better idiot-proof programs, and the Universe trying
to produce bigger and better idiots. So far, the Universe is winning.
yes. but i random number in each column but compare row. what u do u
do random number have having same number in COLUMN but not in row not
ilike 775422133 in column but in order prevented same number in column
like i did previous code::
Loop Until (Nine_numbers3(inum3) > 0)
Nine_numbers3(inum3) = 0
szArray(n) = inum3
that is code will prevent same numbers. i was attempting subsistue in
ur sample code...
For row As Integer = 0 To 8
blnOk = False
Do
' blnOk = False
textboxGrid(row, 0).Text = Int(9 * Rnd() + 1)
' textboxGrid(row, 1).Text = Int(9 * Rnd() + 1)
' textboxGrid(row, 2).Text = Int(9 * Rnd() + 1)
' If textboxGrid(row, 0).Text <> textboxGrid(row,
1).Text <> textboxGrid(row, 2).Text Then
' blnOk = True
' End If
Loop Until textboxGrid(row, 0).Text > 0
Next
but can't figuring it out..... i will have to work around.
regards,
Peter Proost wrote:
you wrote:
>how do i get 2 different number in same row?
using random
>example:
but it shouldn't be to
difficult to alter my example
Greetz Peter
--
Programming today is a race between software engineers striving to
build bigger and better idiot-proof programs, and the Universe trying
to produce bigger and better idiots. So far, the Universe is winning.
nope. u have duplicate numbers in same column
Peter Proost wrote:
Hi,
there probably will be better ways but this does seem to do the trick for me
just open a new windows forms project add a button to it and copy paste this
code, the makeGrid part is just to show the use of a textbox array
hth
Greetz Peter
Private textboxGrid(8, 1) As TextBox
Private Sub Form1_Load(ByVal sender As Object, ByVal e As
System.EventArgs) Handles MyBase.Load
makeGrid()
fillRandom()
End Sub
Private Sub makeGrid()
Dim x As TextBox
Dim xPos, yPos As Integer
yPos = 20
For row As Integer = 0 To 8
xPos = 20
For column As Integer = 0 To 1
x = New TextBox
x.Name = (CStr(row) & CStr(column))
x.Location = New Point(xPos, yPos)
x.BorderStyle = BorderStyle.FixedSingle
x.Width = 20
x.Height = 20
x.Text = ""
Me.Controls.Add(x)
textboxGrid(row, column) = x
xPos += 21
Next
yPos += 21
Next
End Sub
Private Sub fillRandom()
Dim blnOk As Boolean
For row As Integer = 0 To 8
blnOk = False
Do While blnOk = False
textboxGrid(row, 0).Text = CStr(CInt(Rnd() * 9) + 1)
textboxGrid(row, 1).Text = CStr(CInt(Rnd() * 9) + 1)
If textboxGrid(row, 0).Text <> textboxGrid(row, 1).Text Then
blnOk = True
End If
Loop
Next
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles _ Button1.Click
fillRandom()
End Sub
--
Programming today is a race between software engineers striving to build
bigger and better idiot-proof programs, and the Universe trying to produce
bigger and better idiots. So far, the Universe is winning.
"Supra" <supra@xxxxxxxxxxxxxx> schreef in bericht
news:AY-dnc_ukr3tAF_fRVn-tw@xxxxxxxxxx...
how do i get 2 different number in same row? using random
example:
4 2
5 6
7 4
1 7
9 8
3 3 <===== i want different number but not same as opposite
8 5
6 8
2 1
in my code:
Dim Nine_numbers(9) as short
Dim nm, mm As Integer, nine(9), nineA(9) As Object, innn, mmm As Short
Dim j, k As Integer
For innn = 1 To 9
nine(innn) = innn
Next
For innn = 1 To 9
Do
Dim rng As New Random
k = rng.Next(1, 10)
Loop Until nine(k) > 0
nine(k) = 0
szArray(innn) = k
TextBox82.Text = szArray(1)
TextBox91.Text = szArray(2)
TextBox100.Text = szArray(3)
TextBox83.Text = szArray(4)
TextBox92.Text = szArray(5)
TextBox101.Text = szArray(6)
TextBox84.Text = szArray(7)
TextBox93.Text = szArray(8)
TextBox102.Text = szArray(9)
Debug.WriteLine(szArray(innn))
Next
For mmm = 1 To 9
nineA(mmm) = mmm
Next
For mmm = 1 To 9
Do
Dim rng As New Random
j = rng.Next(1, 10)
Loop Until nineA(j) > 0
nineA(j) = 0
szArray(mmm) = j
TextBox85.Text = szArray(1)
TextBox94.Text = szArray(2)
TextBox103.Text = szArray(3)
TextBox86.Text = szArray(4)
TextBox95.Text = szArray(5)
TextBox104.Text = szArray(6)
TextBox87.Text = szArray(7)
TextBox96.Text = szArray(8)
TextBox105.Text = szArray(9)
Debug.WriteLine(szArray(mmm))
Next
ne iideas?
regards
|