Selecció natural en mitjana X51473


Statement
 

pdf   zip   tar

html

Donada una llista de nombres, diem que un element és feble en mitjana si és més petit que la mitjana dels anteriors. Considerem que, si una llista no és buida, el primer element no és feble en mitjana. Dissenyeu una operació iterativa que, donada una llista de double no buida l, obtingui en una altra llista el resultat de treure d’l els elements febles en mitjana. Feu servir aquesta especificació:

void seleccio(const list<double>& l, list<double>& sel) /* Pre: l no es buida, sol es buida */ /* Post: sel es el resultat de treure d'l els elements febles en mitjana */

Per exemple, si la llista l és

7 -5 5 6 -2 2 5 1 -1

s’ha d’obtenir aquesta llista sel

7 5 6 5

i si la llista l és

-7 -5 5 6 -2 2 5 1 -1

s’ha d’obtenir aquesta llista sel

-7 -5 5 6 2 5 1

Entrada

L’entrada és una llista de double.

Sortida

La sortida és una llista com la d’entrada peró sense els elements febles en mitjana.

Observació

Només s’ha d’enviar un fitxer que contengui la funció amb la capçalera de l’enunciat i qualsevol altra funció auxiliar que cregueu convenient, sense la funció main. Afegiu-hi també els includes de les classes que utilitzeu.

Information
Author
Alberto Moreno (adaptador), Ramon Ferrer i Cancho (responsable)
Language
Catalan
Other languages
English Spanish
Official solutions
C++
User solutions
C++