Calcolail prezzomediano su un dato intervallo con un dato numero di approssimazioni.
Ciao C'è un array di valori.
Il compito è scrivere una funzione.
Parametri di ingresso:
- l'array contiene i numeri degli elementi necessari per calcolare la mediana - bufInBar[]
- dimensione dell'array -bufInBar[]- count
- numero di approssimazioni mediane - fokus
void medianaL0(constint &bufInBar[], int count, int fokus)
Cioè, c'è una classe
bufInBar[i] - используется для загрузки нужного элемента при расчете медианы
BP[bufInBar[i]].CenaPerioda; - по этому значению рассчитывается медиана
BP[bufInBar[i]].Period;
In uscita :
BP[bufInBar[i]].Mediana;
Compilato in ordine crescente, per esempio da 0 a 10.
Cioè, sefokus=10 nella condizione, allora all'intervallo i<conta i dieci valori
Aleksei Stepanenko: In teoria, la mediana è il valore dell'elemento nel mezzo di un array ordinato. Che cos'è nel tuo caso?
Esempio:
Array di 30 valori di prezzo MA, cerca il centro dell'array ordinato.
Otteniamo il valore 15(L0) al centro della matrice, poi otteniamo due matrici da L0 in giù e L0 in su e troviamo il centro di queste matrici e così via fino ad ottenere il numerofokus (sette valori per esempio)
--------------|--------------
-------|--------------|------
---|-------|------|-------|--
fokus=7
| - значение цены
Array di 30 valori di prezzo MA, cerca il centro dell'array ordinato.
Otteniamo 15(L0) come valore al centro della matrice, poi otteniamo due matrici da L0 verso il basso e L0 verso l'alto e troviamo il centro di queste matrici e così via fino ad ottenere il numerofokus (sette valori per esempio)
E se c'è un numero pari di elementi dell'array, quale elemento sarà la mediana, o dovrebbe essere calcolata come la media di due o qualcos'altro?
È corretto supporre che dobbiamo trovare sette percentili: 12,5, 25, 37,5, 50, 62,5, 75, 87,5?
Se è così, dividete il numero di elementi nell'array ordinato per 8 (7+1), e moltiplicate per il numero del percentile che volete. Otteniamo i seguenti indici di elementi: 3, 7, 11, 15, 18, 22, 26.
int index=ArraySize(bufInBar)*percentile/(fokus+1);
//где percentile - номер нужного перцентиля от 1 до fokus double value=bufInBar[index];
Giusto, o sto andando nella direzione sbagliata? Se è così, la cosa più importante qui è creare un meccanismo parsimonioso per mantenere un array ordinato.
È corretto supporre che dobbiamo trovare sette percentili: 12,5, 25, 37,5, 50, 62,5, 75, 87,5?
Se è così, dividete il numero di elementi nella matrice ordinata per 8 (7+1), e moltiplicate per il numero del percentile richiesto. Otteniamo i seguenti indici di elementi: 3, 7, 11, 15, 18, 22, 26.
Giusto, o sto andando nella direzione sbagliata? Se è così, la cosa più importante qui è creare un meccanismo parsimonioso per mantenere un array ordinato.
Dall'array di valori MA devi trovare la mediana dell'intero array, poi le mediane degli array ottenuti sopra/sotto la prima mediana, ecc.
Sembra giusto allora, la mediana della prima parte della matrice è un quarto della matrice totale, ed è il 25 percentile. E la mediana della seconda parte è il 75° percentile.
Calcolail prezzomediano su un dato intervallo con un dato numero di approssimazioni.
Ciao C'è un array di valori.
Il compito è scrivere una funzione.
Parametri di ingresso:
- l'array contiene i numeri degli elementi necessari per calcolare la mediana - bufInBar[]
- dimensione dell'array -bufInBar[]- count
- numero di approssimazioni mediane - fokus
Cioè, c'è una classe
bufInBar[i] - используется для загрузки нужного элемента при расчете медианы BP[bufInBar[i]].CenaPerioda; - по этому значению рассчитывается медиана BP[bufInBar[i]].Period;In uscita :
Compilato in ordine crescente, per esempio da 0 a 10.
Cioè, sefokus=10 nella condizione, allora all'intervallo i<conta i dieci valori
sarà da 1 a 10.
Per esempio
Non è chiaro cosa sia il fokus
In teoria, la mediana è il valore dell'elemento nel mezzo di un array ordinato. Che cos'è nel tuo caso?
Esempio:
Array di 30 valori di prezzo MA, cerca il centro dell'array ordinato.
Otteniamo il valore 15(L0) al centro della matrice, poi otteniamo due matrici da L0 in giù e L0 in su e troviamo il centro di queste matrici e così via fino ad ottenere il numerofokus (sette valori per esempio)
--------------|-------------- -------|--------------|------ ---|-------|------|-------|-- fokus=7 | - значение ценыEsempio:
Array di 30 valori di prezzo MA, cerca il centro dell'array ordinato.
Otteniamo 15(L0) come valore al centro della matrice, poi otteniamo due matrici da L0 verso il basso e L0 verso l'alto e troviamo il centro di queste matrici e così via fino ad ottenere il numerofokus (sette valori per esempio)
E se c'è un numero pari di elementi dell'array, quale elemento sarà la mediana, o dovrebbe essere calcolata come la media di due o qualcos'altro?
Esempio:
È corretto supporre che dobbiamo trovare sette percentili: 12,5, 25, 37,5, 50, 62,5, 75, 87,5?
Se è così, dividete il numero di elementi nell'array ordinato per 8 (7+1), e moltiplicate per il numero del percentile che volete. Otteniamo i seguenti indici di elementi: 3, 7, 11, 15, 18, 22, 26.
Giusto, o sto andando nella direzione sbagliata? Se è così, la cosa più importante qui è creare un meccanismo parsimonioso per mantenere un array ordinato.
E se l'array ha un numero pari di elementi, quale elemento è la mediana o deve essere calcolato come la media di due o qualcosa del genere?
Penso che sia più facile prendere un valore intero pari.
Se ci sono 15 elementi, allora la mediana è 8.
È corretto supporre che dobbiamo trovare sette percentili: 12,5, 25, 37,5, 50, 62,5, 75, 87,5?
Se è così, dividete il numero di elementi nella matrice ordinata per 8 (7+1), e moltiplicate per il numero del percentile richiesto. Otteniamo i seguenti indici di elementi: 3, 7, 11, 15, 18, 22, 26.
Giusto, o sto andando nella direzione sbagliata? Se è così, la cosa più importante qui è creare un meccanismo parsimonioso per mantenere un array ordinato.
Dall'array di valori MA devi trovare la mediana dell'intero array, poi le mediane degli array ottenuti sopra/sotto la prima mediana, ecc.
Sembra giusto allora, la mediana della prima parte della matrice è un quarto della matrice totale, ed è il 25 percentile. E la mediana della seconda parte è il 75° percentile.
Questo:
è uguale a questo: