GTA-Expert Forum: [HELP] Algoritmo di ordinamento - GTA-Expert Forum

Salta al contenuto

Pagina 1 di 1
  • Non puoi iniziare una nuova discussione
  • Non puoi rispondere a questa discussione

[HELP] Algoritmo di ordinamento

#1 L'utente è offline   Rambo_John 

  • Cleptomane
  • Gruppo: Utenti
  • Messaggi: 196
  • Iscritto il: 02/07/10

Inviato il 12 luglio 2013 - 10:24

Salve a tutti!

Sto cercando di ordinare una serie di numeri in ordine crescente, ma non riesco a fare qualcosa che funzioni. Nel mio caso sono 5 numeri, che poi andranno eguagliati a una nuova variabile. Mi spiego: una volta che ho il numero più basso voglio eguagliarlo a PrimoNumero, poi il secondo a SecondoNumero, e così via. Come si fa a ordinarli?

Messaggio modificato da Rambo_John il 12 luglio 2013 - 10:26

0

#2 L'utente è offline   Keziolio 

  • Cittadino Integerrimo
  • Gruppo: Utenti
  • Messaggi: 7
  • Iscritto il: 11/07/13
  • GTA Preferito:GTA: San Andreas

Inviato il 12 luglio 2013 - 10:38

il metodo più semplice è questo https://it.wikipedia...iki/Bubble_sort
0

#3 L'utente è offline   Rambo_John 

  • Cleptomane
  • Gruppo: Utenti
  • Messaggi: 196
  • Iscritto il: 02/07/10

Inviato il 12 luglio 2013 - 11:20

Sì, però non so applicarlo al pawno...
0

#4 L'utente è offline   Keziolio 

  • Cittadino Integerrimo
  • Gruppo: Utenti
  • Messaggi: 7
  • Iscritto il: 11/07/13
  • GTA Preferito:GTA: San Andreas

Inviato il 12 luglio 2013 - 14:25

il pawno è uguale al C++/C# e da implementare se ti leggi la descrizione è roba da 5 minuti, anche se non vuoi utilizzare metodi particolari ti basta una catena di if e un loop se sono solo 5 variabili
0

#5 L'utente è offline   Rambo_John 

  • Cleptomane
  • Gruppo: Utenti
  • Messaggi: 196
  • Iscritto il: 02/07/10

Inviato il 12 luglio 2013 - 14:36

Questo ha senso?

forward bubbleSort();
public bubbleSort()
{
	new bool: swapped;
	new n = 5;
	new nPosto[5];
	nPosto[0] = 5;
	nPosto[1] = 4;
	nPosto[2] = 3;
	nPosto[3] = 2;
	nPosto[4] = 1;

	swapped = true;
	new j = 0;
	new tmp;
	while(swapped == true)
	{
		swapped = false;
		j++;
		for (new i = 0; i < n - j; i++)
		{
			if(nPosto[i] > nPosto[i + 1])
			{
				tmp = nPosto[i];
				nPosto[i] = nPosto[i + 1];
				nPosto[i + 1] = tmp;
				swapped = true;
			}
		}    
	}
}


EDIT:

Ho risolti così:

	new n = 5;
	new bool: swapped = true;
	swapped = true;
	new j = 0;
	new tmp;
	while(swapped == true)
	{
		swapped = false;
		j++;
		for(new x; x < 5; x++)
		{
			for (new i = 0; i < n - j; i++)
			{
				if(nPosto[i] > nPosto[i + 1])
				{
					tmp = nPosto[i];
					nPosto[i] = nPosto[i + 1];
					nPosto[i + 1] = tmp;
					swapped = true;
				}
			}
		}

Messaggio modificato da Rambo_John il 12 luglio 2013 - 15:16

0

Pagina 1 di 1
  • Non puoi iniziare una nuova discussione
  • Non puoi rispondere a questa discussione

1 utenti stanno leggendo questa discussione
0 utenti, 1 ospiti, 0 utenti anonimi