Forumi
Home Pravila i pomoć Članovi Kalendar Današnji postovi


Povratak   PC Ekspert Forum > Računala > Software > Web dizajn, programiranje i ostalo
Ime
Lozinka

Odgovori
 
Uređivanje
Staro 09.01.2008., 02:24   #1
Shook
Registered User
 
Shook's Avatar
 
Datum registracije: Sep 2002
Lokacija: Split, Croatia
Postovi: 10
Naredbe bubble sorta u Visual Basicu

Pozdrav!
Za četvrtak 10.01 imam zadatak iz programiranja napraviti niz od 400 slučajnih brojeva od 0 do 999 u matrici 20X20 i od toga napraviti bubble sort. Prvi dio za matricu mi izgleda ovako:

Module Module1
Sub Main()
Dim a(20, 20) As Integer
Dim sluc As Integer
Dim min, max As Integer
Dim randomObject As New Random()
Dim i, j As Integer
sluc = randomObject.Next(1, 999)
For i = 0 To 19
For j = 0 To 19
sluc = randomObject.Next(1, 999)
a(i, j) = sluc
Console.Write(a(i, j) & vbTab)
Next
Console.WriteLine()
Next

End Sub
End Module

Molim Vas da li netko zna koje naredbe trebam napisati da mi se napravi bubble sort?

Unaprijed hvala!
__________________
Intel Core 2 Duo E6600@2.5 Ghz,
ASUS P5B-E PLUS,
2x1GB Kingmax Mars 6400@ 800 Mhz,
Point of View Geforce 8800GTS EXO Edition,
Seagate 320 GB SATA II, 16 MB cache
DVD/RW NEC ND-3550A,
CD-R/W Teac 40/12/48,
Win XP Pro SP2
Shook je offline   Reply With Quote
Staro 09.01.2008., 13:36   #2
pogi
aka Mali Mirko
Moj komp
 
pogi's Avatar
 
Datum registracije: Nov 2001
Lokacija: Rijeka
Postovi: 3,084
Pa upiši u google bubble sort i iskodiraj to u vb.

Ako si znao napunit matricu slučajnim brojevima, u čemu je problem, pretpostavljam kako je 2d matrica da je treba sortirati po redovima?
__________________
Verifikacija poštenog trgovca #1, #2, #3, #4, #5, #6, #7, #8, #9
pogi je offline   Reply With Quote
Oglasni prostor
Oglas
 
Oglas
Staro 09.01.2008., 17:08   #3
Shook
Registered User
 
Shook's Avatar
 
Datum registracije: Sep 2002
Lokacija: Split, Croatia
Postovi: 10
tako je, samo neznam koje naredbe napisati, tražio sam po google-u, to su većinom naredbe za C++, nigdje nemogu naći za visual basic... zadatak je točno glasio: napravit niz od 400 slučajnih brojeva od 0 do 999 i onda ih sortirat najmanji-najveći i spisat ih u redu od 0 do 19 20-40...380-399 i napravit bubble sort
__________________
Intel Core 2 Duo E6600@2.5 Ghz,
ASUS P5B-E PLUS,
2x1GB Kingmax Mars 6400@ 800 Mhz,
Point of View Geforce 8800GTS EXO Edition,
Seagate 320 GB SATA II, 16 MB cache
DVD/RW NEC ND-3550A,
CD-R/W Teac 40/12/48,
Win XP Pro SP2
Shook je offline   Reply With Quote
Staro 09.01.2008., 17:28   #4
pogi
aka Mali Mirko
Moj komp
 
pogi's Avatar
 
Datum registracije: Nov 2001
Lokacija: Rijeka
Postovi: 3,084
To što su primjeri u C++ nebi trebalo biti problem. Bez obzira što neznaš C++...

Ahhh ... probaj nabaviti neku knjigu tipa (ova je najjednostavnija)
Teach Yourself Data Structures And Algorithms In 24 hours - Robert Lafore

A do tada sam našao nekakav moj kod u VBA od prije ni neznam koliko (dakle ne primam pokude na kod :-) ) Koristi polja A4:AM4 i koje upišeš nekakve brojeve. Glavna stvar koju će profesor vjerojatno tražiti da se unutarnja petlja mora za svako izvođenje vanjske petlje mora smanjivati (ako sam se dobro izrazio

Citiraj:
Dim shit As Object

Sub bubble_sort()
Const matrsize = 39
Dim matrica(matrsize) As Integer

Dim result As Boolean

Set shit = Sheets("Sheet1")

'napuni matricu
For i = 1 To matrsize
matrica(i) = shit.Cells(4, i).Value
Next

result = bsort(matrica, matrsize)


End Sub

Function bsort(ByRef matrix, ByVal size As Integer) As Boolean
Dim tempvar, i, j, brojprolaza, brojzamjena As Integer

brojprolaza = 0
brojzamjena = 0
For i = 1 To (size - 1)
For j = 1 To ((size - 1) - (i - 1))
brojprolaza = brojprolaza + 1
shit.Cells(5, j).Value = 1
shit.Cells(5, j + 1).Value = 1
If shit.Cells(4, j).Value > shit.Cells(4, j + 1).Value Then
brojzamjena = brojzamjena + 1
tempvar = shit.Cells(4, j).Value
shit.Cells(4, j).Value = shit.Cells(4, j + 1).Value
shit.Cells(4, j + 1).Value = tempvar
End If
shit.Cells(5, j).Value = 0
shit.Cells(5, j + 1).Value = 0
Next j
Next i
MsgBox "Broj prolaza = " & brojprolaza & " Broj zamjena = " & brojzamjena
bsort = True
End Function
__________________
Verifikacija poštenog trgovca #1, #2, #3, #4, #5, #6, #7, #8, #9
pogi je offline   Reply With Quote
Oglasni prostor
Oglas
 
Oglas
Odgovori



Pravila postanja
Vi ne možete otvarati nove teme
Vi ne možete pisati odgovore
Vi ne možete uploadati priloge
Vi ne možete uređivati svoje poruke

BB code je Uključeno
Smajlići su Uključeno
[IMG] kod je Uključeno
HTML je Isključeno

Idi na