Come organizzare i valori in modo casuale in MATLAB

November 13

MATLAB da Mathworks è un programma software per computer che può essere utilizzato per analizzare, manipolare, i dati trama e condividere. Il programma può tracciare dati in due o tre dimensioni ed è anche molto utile per i calcoli di algebra lineare, come calcoli coinvolgono array e matrici. Un array è un elenco di numeri. MATLAB contiene centinaia di funzioni built-in, ma nessuno specifico per riordinare in modo casuale i valori in un array. Per realizzare questo compito, è necessario utilizzare una piccola quantità di linguaggio di programmazione.

istruzione

1 Digitare quanto segue al prompt dei comandi MATLAB:

NewOrder = randperm (lunghezza (A));

In questo codice, "A" è il nome della matrice. "Lunghezza (A)" calcola quanti numeri sono in "A"; per esempio, sei. "Randperm (lunghezza (A))" crea un nuovo array della stessa lunghezza "A", costituiti da numeri da 1 attraverso la lunghezza di "A", in un ordine casuale. negozi MATLAB questo nuovo array con il nome "NewOrder". Ad esempio, "NewOrder" può essere la lista [4 5 6 2 1 3].

2 Calcolare il nuovo array riarrangiato digitando il seguente codice:

per i = 1: lunghezza (A)

Nuovo (i) = A (NewOrder (i));

fine

Questo codice determina i valori in un nuovo array, Anew. Elemento per elemento pone l'elemento della vecchia matrice in quello nuovo utilizzando il MATLAB ordine casuale designato come "NewOrder" nel passaggio precedente.

3 Tipo "Anew" per visualizzare il nuovo array. Ad esempio, se la matrice originale "A" aveva i valori [11 12 13 14 15 16], allora il vostro nuovo array «di nuovo» può essere [13 11 15 12 14 16]. Se non ci sono numeri nella ripetizione matrice originale, ci sono n! possibili permutazioni casuali, dove n è la lunghezza di A e! indica fattoriale della lunghezza.