Volledige versie bekijken : Programmeer probleem



Roelof
12 June 2010, 13:48
Hoi,

Ik ben bezig mezelf c++ te lezen en vond een lastige opdracht.

De opdracht is :
Suppose we wish to find the median of a collection of values. Assume we have read some vaues so far and we have no idea how many values remain to be read.
Prove we can afford to discard any values that we have read.

Hint : One prove strategy is to assume that we can discard any value, and then find values for the unread - and therefore unknow - part of the collection that would cause the median to be the value that we discarded.


Dus we hebben het rijtje 1,2,3,4,5,6,7,8,9.
De mediaan is dan 5.

Nu vergeten we de 3.
En we lezen de rest in . We hebben dan 1.2.4.5.6.7.8.9
De mediaan is dan volgens mij 5.5. en niet 2 .

Kan me iemand vertellen waar mijn denkfout zit ?

Roelof

carl
12 June 2010, 15:17
Er zit geen denkfout, de mediaan van die rij is 5.5

Onthoud ook dat mean engels voor het gemiddelde is, niet verwarren dus :)
Misschien willen ze een fout in hun algoritme aantonen ofzo ?

ultddave
12 June 2010, 20:28
Ik denk dat er typo in zit. Op internet vind ik dezelfde vraag terug (http://www.daniweb.com/forums/thread38878.html), maar met dit anders:

Prove that we cannot afford to discard any of the values that we have read.
Terwijl jij hebt:

Prove we can afford to discard any values that we have read.

Maar in principe leert dit je niet echt programmeren in C++, dit is eerder een wiskunde oefening. ;)

De uitleg in je vraag, is dus de oplossing voor het probleem. Met dat voorbeeld van die 5.5 kan je oa zien dat dat niet gaat.

PS: Als je vragen hebt over C++, mag je ze altijd stellen. ;)

Mvg,
Dave

Roelof
12 June 2010, 20:35
Hoi,

Dit is hetzelfde probleem.
Maar het wordt me nu wel iets duidelijker.
Eens kijken hoe op te lossen.

Roelof