Forum Sveta kompjutera

Nazad   Forum Sveta kompjutera > Test Run > Programiranje
Uputstvo Članstvo Kalendar Današnje poruke Pretraži

Programiranje Programski jezici, tehnike, alatke...

Odgovor
 
Alatke vezane za temu Vrste prikaza
Stara 10.6.2013, 17:57   #1
NIx Car
Deo inventara foruma
 
Član od: 28.12.2006.
Lokacija: New Now
Poruke: 3.641
Zahvalnice: 1.743
Zahvaljeno 921 puta na 518 poruka
Slanje poruke preko MSN-a korisniku NIx Car Slanje poruke preko Skypea korisniku NIx Car
Određen forumom Problem oko generisanja pseudoslucajnih brojeva

Da i ovde postavim pitanje...

Pravim sad neku igru, i treba da generisem pseudoslucajne brojeve tako da mi se brojevi u nizu ne smeju ponavljati i moraju biti poredjani u rastucem redosledu.


napravio sam funkciju koja to sve regulise.
U samom mainu sam stavio srand(time(NULL));

Kod:
void numDif(std::vector<struct krug>&a, int n)
{
	for(int i = 0; i <n;i++)
	{
		for(int j = i + 1; j < n;j++)
		{
			if(a[i].broj >= a[j].broj)
			{
				while(a[i].broj >= a[j].broj)
					a[j].broj = rand() % 100;
			}
		}
	}
}
problem je u tome sto program upadne u beskonacnu while petlju, i to kada je i-ti element jednak sa j-tim elementom... Kako resiti ovaj problem? Da opet napomenem srand(time(NULL)) se vec nalazi na pocetku main-a
NIx Car je offline   Odgovor sa citatom ove poruke
Stara 10.6.2013, 18:00   #2
water wizard
Deo inventara foruma
 
Član od: 29.1.2008.
Poruke: 20.482
Zahvalnice: 433
Zahvaljeno 4.007 puta na 3.729 poruka
Određen forumom Re: Problem oko generisanja pseudoslucajnih brojeva

stavi samo random da ne koči igra...
water wizard je offline   Odgovor sa citatom ove poruke
Stara 10.6.2013, 18:03   #3
NIx Car
Deo inventara foruma
 
Član od: 28.12.2006.
Lokacija: New Now
Poruke: 3.641
Zahvalnice: 1.743
Zahvaljeno 921 puta na 518 poruka
Slanje poruke preko MSN-a korisniku NIx Car Slanje poruke preko Skypea korisniku NIx Car
Određen forumom Re: Problem oko generisanja pseudoslucajnih brojeva

Pojasni. Gde da stavim random?
NIx Car je offline   Odgovor sa citatom ove poruke
Stara 10.6.2013, 18:07   #4
water wizard
Deo inventara foruma
 
Član od: 29.1.2008.
Poruke: 20.482
Zahvalnice: 433
Zahvaljeno 4.007 puta na 3.729 poruka
Određen forumom Re: Problem oko generisanja pseudoslucajnih brojeva

eh.. naterao si me da čitam programski kod.. kao prvo ja nisam nešto stručan..
ali mislim da se u ovom delu zaglavi..

Kod:
while(a[i].broj >= a[j].broj) 					a[j].broj = rand() % 100;
water wizard je offline   Odgovor sa citatom ove poruke
Stara 10.6.2013, 18:26   #5
Sun Tzu
Starosedelac
 
Član od: 10.8.2007.
Lokacija: Temples of Syrinx
Poruke: 2.193
Zahvalnice: 417
Zahvaljeno 1.006 puta na 568 poruka
Određen forumom Re: Problem oko generisanja pseudoslucajnih brojeva

Kod:
    for(int i = 0; i <n;i++)
            for(int j = i + 1; j < n;j++)
i dođe do n, j dođe do n, oba su n. I onda
Kod:
                while(a[i].broj >= a[j].broj)
                    a[j].broj = rand() % 100;
ti na a[n] upišeš novi broj, ali to je i a[i], uvek su jednaki.
Valjda.
Sun Tzu je offline   Odgovor sa citatom ove poruke
Stara 10.6.2013, 18:37   #6
NIx Car
Deo inventara foruma
 
Član od: 28.12.2006.
Lokacija: New Now
Poruke: 3.641
Zahvalnice: 1.743
Zahvaljeno 921 puta na 518 poruka
Slanje poruke preko MSN-a korisniku NIx Car Slanje poruke preko Skypea korisniku NIx Car
Određen forumom Re: Problem oko generisanja pseudoslucajnih brojeva

for(int j = i + 1; j < n;j++)

on ovu petlju nece izvrsiti ukoliko je i = n - 1.
water wizard je u pravu, tamo zabode kod. I to samo kada su brojevi jednaki...

Poslednja ispravka: NIx Car (10.6.2013 u 19:06)
NIx Car je offline   Odgovor sa citatom ove poruke
Sledeći korisnik se zahvaljuje korisniku NIx Car na korisnoj poruci:
Sun Tzu (10.6.2013)
Stara 10.6.2013, 19:04   #7
Belphegor
V.I.P. Programiranje
 
Član od: 29.8.2007.
Lokacija: Valjevo
Poruke: 1.349
Zahvalnice: 983
Zahvaljeno 371 puta na 280 poruka
Određen forumom Re: Problem oko generisanja pseudoslucajnih brojeva

Ja imam drugaciji predlog ako ti odgovara?
Uzmes niz brojeva od minimalnog do maximalnog koji moze da se izvuce.
Onda pozoves random_shuffle na taj niz i pokupis prvih N brojeva koliko ti treba i posle ih samo sortiras kako ti odgovara.

Poslednja ispravka: Belphegor (10.6.2013 u 19:34) Razlog: Prepravio drugu recenicu da ima bar nekog smisla
Belphegor je offline   Odgovor sa citatom ove poruke
Sledeći korisnik se zahvaljuje korisniku Belphegor na korisnoj poruci:
NIx Car (10.6.2013)
Stara 10.6.2013, 19:14   #8
NIx Car
Deo inventara foruma
 
Član od: 28.12.2006.
Lokacija: New Now
Poruke: 3.641
Zahvalnice: 1.743
Zahvaljeno 921 puta na 518 poruka
Slanje poruke preko MSN-a korisniku NIx Car Slanje poruke preko Skypea korisniku NIx Car
Određen forumom Re: Problem oko generisanja pseudoslucajnih brojeva

Predlog je super. Mada mi deluje way more complicated.

Probacu da ga implementiram...
NIx Car je offline   Odgovor sa citatom ove poruke
Stara 10.6.2013, 19:41   #9
Belphegor
V.I.P. Programiranje
 
Član od: 29.8.2007.
Lokacija: Valjevo
Poruke: 1.349
Zahvalnice: 983
Zahvaljeno 371 puta na 280 poruka
Određen forumom Re: Problem oko generisanja pseudoslucajnih brojeva

Malo sam googlao i koliko vidim 90% njih predlaze isto ovaj shuffle fazon.
Belphegor je offline   Odgovor sa citatom ove poruke
Sledeći korisnik se zahvaljuje korisniku Belphegor na korisnoj poruci:
NIx Car (10.6.2013)
Stara 10.6.2013, 20:42   #10
NIx Car
Deo inventara foruma
 
Član od: 28.12.2006.
Lokacija: New Now
Poruke: 3.641
Zahvalnice: 1.743
Zahvaljeno 921 puta na 518 poruka
Slanje poruke preko MSN-a korisniku NIx Car Slanje poruke preko Skypea korisniku NIx Car
Određen forumom Re: Problem oko generisanja pseudoslucajnih brojeva

Savrseno radi. Hvala
NIx Car je offline   Odgovor sa citatom ove poruke
Stara 10.6.2013, 22:25   #11
NIx Car
Deo inventara foruma
 
Član od: 28.12.2006.
Lokacija: New Now
Poruke: 3.641
Zahvalnice: 1.743
Zahvaljeno 921 puta na 518 poruka
Slanje poruke preko MSN-a korisniku NIx Car Slanje poruke preko Skypea korisniku NIx Car
Određen forumom Re: Problem oko generisanja pseudoslucajnih brojeva

A jel postoji neka mogucnost da taj random_shuffle razbaca elemente da je svaki sledeci za neki odredjeni broj veci ili manji od prethodnog ? To kada bi postojalo bilo bi super, za jos jedan problem sa kojim se suocavam

Posto radim sa grafikom, i iscrtao sam neke krugove. E sad krugovi trebaju da mi budu razbacani nasumicno po ekranu, i ne smeju da se dodiruju, seku ili tako nesto. Moraju da budu na nekoj distanci
NIx Car je offline   Odgovor sa citatom ove poruke
Stara 10.6.2013, 22:34   #12
Belphegor
V.I.P. Programiranje
 
Član od: 29.8.2007.
Lokacija: Valjevo
Poruke: 1.349
Zahvalnice: 983
Zahvaljeno 371 puta na 280 poruka
Određen forumom Re: Problem oko generisanja pseudoslucajnih brojeva

Meni je trebao taj algoritam jednom, pa mi je MG-RAY pomogao sa implementacijom, ne secam se u kojoj je temi bilo (a pretraga na ovom forumu nije nizasta ) pa ne mogu da nadjem.
Evo ti src (Win32 app) sto sam sacuvao na hardu, pa iskopaj sta ti odgovara.



EDIT: Nasao temu: http://www.sk.rs/forum/showthread.ph...=random&page=3
Priloženi fajlovi
Tip fajla: rar PlacerC++.rar (3,4 KB, 8 puta viđeno)

Poslednja ispravka: Belphegor (10.6.2013 u 22:45)
Belphegor je offline   Odgovor sa citatom ove poruke
Sledeći korisnik se zahvaljuje korisniku Belphegor na korisnoj poruci:
NIx Car (10.6.2013)
Stara 20.6.2013, 10:29   #13
Teva
Starosedelac
 
Član od: 23.2.2006.
Lokacija: Tamo gde su kuće od čokolade i prozori od marmelade....
Poruke: 1.579
Zahvalnice: 195
Zahvaljeno 301 puta na 171 poruka
Određen forumom Re: Problem oko generisanja pseudoslucajnih brojeva

Citat:
NIx Car kaže: Pregled poruke
A jel postoji neka mogucnost da taj random_shuffle razbaca elemente da je svaki sledeci za neki odredjeni broj veci ili manji od prethodnog ? To kada bi postojalo bilo bi super, za jos jedan problem sa kojim se suocavam
Ako sam te dobro razumeo to mu dodje sortiranje xD
Teva je offline   Odgovor sa citatom ove poruke
Stara 20.6.2013, 12:04   #14
NIx Car
Deo inventara foruma
 
Član od: 28.12.2006.
Lokacija: New Now
Poruke: 3.641
Zahvalnice: 1.743
Zahvaljeno 921 puta na 518 poruka
Slanje poruke preko MSN-a korisniku NIx Car Slanje poruke preko Skypea korisniku NIx Car
Određen forumom Re: Problem oko generisanja pseudoslucajnih brojeva

Pa da, ali sam uvideo da mi taj nacin sortiranja moze napraviti problem, tako da sam profesoru samo predao onaj kod, i covek se zaprepastio kad je video random_shuffle
NIx Car je offline   Odgovor sa citatom ove poruke
Odgovor

Bookmarks sajtovi


Vaš status
Ne možete postavljati teme
Ne možete odgovarati na poruke
Ne možete slati priloge uz poruke
Ne možete prepravljati svoje poruke

BB kod: uključeno
Smajliji: uključeno
[IMG] kod: uključeno
HTML kod: isključeno


Slične teme
tema temu započeo forum Odgovora Poslednja poruka
Problem HDD Led Sija kao Sumanut (negasi se) King SRB Kvarovi 19 10.7.2013 7:21
Extremno cudan problem sa RapidShare-om MarkoT Internet tehnologije 8 2.4.2010 18:20
Problem sa zvukom - da li je do hardware-a ili nesto drugo? FiresnakE Kvarovi 6 5.3.2010 12:08
Problem sa adapterom i baterijom DELL Ispiron 1300 maximusbrut Kvarovi 0 12.11.2009 11:15
Veliki problem sa RAM memorijom leka Kvarovi 10 27.7.2006 10:17


Sva vremena su po Griniču +2 h. Sada je 14:47.


Powered by vBulletin® verzija 3.8.7
Copyright ©2000–2024, vBulletin Solutions, Inc.
Hosted by Beograd.com